89o6欧浏
1 89C51 实 训 指导书
录 基本I/O口实训 外部数据存储器的应用(6264) 外部数据存储器的应用(2864) 468 键盘显示接口芯片的应用 并口扩展的应用 12 A/D转换的实训 14 D/A转换的实训 采集温度 制作音乐盒 制作四字单色显示屏 31 控制微型打印机
2 目 录 基本 I/O 口实训··································1 外部数据存储器的应用(6264)····················· 4 外部数据存储器的应用(2864)····················· 6 键盘显示接口芯片的应用·························· 8 并口扩展的应用··································12 A/D 转换的实训··································14 D/A 转换的实训··································20 采集温度········································21 制作音乐盒······································27 制作四字单色显示屏······························31 控制微型打印机··································39
实验一:基本功/0口的实训 目的:通过对单片机的编程仿真,学会单片机仿真系统的基本工作过程 要求:用LED的亮/灭来体现单片机高/低电平的变化,连接单片机的基本I/0口,对单片机 进行编程使其完成 (1)8个LED顺序点亮,顺序熄灭,依此循环4次。 (2)8个LED,第1、3、5、7与2、4、6、8LED交替点亮,依此循环4次。 (3)(1)和(2)无限次循环 步骤:1,连接系统板的P1口到LED 2,连接PC机和仿真机的串口线 3,给仿真机接通电源 4,打开仿真机的电源开关,电源灯亮表示仿真系统已经带电 5,编程。 6,调试 7,改换其它IO口,调试程序
3 实验一:基本 I/O 口的实训 目的:通过对单片机的编程仿真,学会单片机仿真系统的基本工作过程。 要求:用 LED 的亮/灭来体现单片机高/低电平的变化,连接单片机的基本 I/O 口,对单片机 进行编程使其完成: (1)8 个 LED 顺序点亮,顺序熄灭,依此循环 4 次。 (2)8 个 LED,第 1、3、5、7 与 2、4、6、8 LED 交替点亮,依此循环 4 次。 (3)(1)和(2)无限次循环。 原理: 1 2 3 4 A B C D 1 2 3 4 D C B A Title Size Number Revision A Date: 22-Sep-2005 Sheet of File: D:\chu\MyDesign1. ddb Drawn By: EA/VP 3 1 X 1 1 9 X 2 1 8 RESET 9 R D 1 7 W R 1 6 INT0 1 2 INT1 1 3 T0 1 4 T1 1 5 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 3 9 P01 3 8 P02 3 7 P03 3 6 P04 3 5 P05 3 4 P06 3 3 P07 3 2 P20 2 1 P21 2 2 P22 2 3 P23 2 4 P24 2 5 P25 2 6 P26 2 7 P27 2 8 PSEN 2 9 ALE/P 3 0 TXD 1 1 RXD 1 0 89C51 1 Y 1 Y 3 Y 4 Y 5 Y 6 Y 7 Y 8 Y 1 A 2 A 3 A 4 A 5 A 6 A 7 A 8 A 74A LS04 300 300 300 300 300 300 300 300 +5V 20uF 1 K +5V 11. 0592MHz 30PF 30PF 步骤:1,连接系统板的 P1 口到 LED。 2,连接 PC 机和仿真机的串口线。 3,给仿真机接通电源。 4,打开仿真机的电源开关,电源灯亮表示仿真系统已经带电。 5,编程。 6,调试。 7,改换其它 I/O 口,调试程序
参考程序: 0000H MAIN: MOV 1. #OFFH R7,#04H BACKI CLR P1. 0 LCALL YS cLR P1. 1 LCALL YS CLR P1.2 LCALL CLR P1.3 LCALL YS CLR P1.4 LCALL YS CLR P1.5 LCALL YS CLR P1. 6 LCALL YS CLR P1.7 LCALL YS SETB Pl. 0 LCALL YS setB Pl. 1 LCALL YS SETB P1. 2 LCALL YS TB Pl. 3 CALL YS SETB P1. 4 LCALL YS SetB P1. 5 LCALL YS SETB Pl LCALL YS SETB P1. 7 LCALL YS CLR P3. 0 DJNZ R7, BACK1 MOV R7, #04H BACK2: SETB P3. 0 CLR P1.1 CLR P1.3
4 参考程序: ORG 0000H MAIN: MOV P1,#0FFH MOV R7,#04H BACK1: SETB P3.0 CLR P1.0 LCALL YS CLR P1.1 LCALL YS CLR P1.2 LCALL YS CLR P1.3 LCALL YS CLR P1.4 LCALL YS CLR P1.5 LCALL YS CLR P1.6 LCALL YS CLR P1.7 LCALL YS SETB P1.0 LCALL YS SETB P1.1 LCALL YS SETB P1.2 LCALL YS SETB P1.3 LCALL YS SETB P1.4 LCALL YS SETB P1.5 LCALL YS SETB P1.6 LCALL YS SETB P1.7 LCALL YS CLR P3.0 DJNZ R7,BACK1 MOV R7,#04H BACK2: SETB P3.0 CLR P1.1 CLR P1.3
CLR P1.5 CLR P1.7 LCALL YS LCALL YS BBB P1.5 SeTB P1. 7 CLR CLR P1. 2 CLR P1.4 CLR LCALL YS LCALL YS SETB Pl. 0 SETB P1.2 SETB P1. 4 Etb P1. 6 DJNZ BACK2 L JMP MAIN MOV TMOD, #OlH MOV R5,#05H LOOP MO\ THO, #4CH MOV TLO. #OOH SETB TRO CL BRR TFO, S DJNZ R5, LOOP RET SJMP 心得体会
5 CLR P1.5 CLR P1.7 LCALL YS LCALL YS SETB P1.1 SETB P1.3 SETB P1.5 SETB P1.7 CLR P1.0 CLR P1.2 CLR P1.4 CLR P1.6 LCALL YS LCALL YS SETB P1.0 SETB P1.2 SETB P1.4 SETB P1.6 CLR P3.0 DJNZ R7,BACK2 LJMP MAIN YS: MOV TMOD,#01H MOV R5,#05H LOOP: MOV TH0,#4CH MOV TL0,#00H SETB TR0 JNB TF0,$ CLR TF0 CLR TR0 DJNZ R5,LOOP RET SJMP $ END 心得体会: