1、单片机并行 I/O 口的应用实验 一、实验目的1、熟悉 Proteus 软件和 Keil 软件的使用方法 。2、熟悉单片机应用电路的设计方法 。3、掌握单片机并行 I/O 口的直接应用方法 。4、掌握单片机应用程序的设计和调试方法。 二、实验内容或原理1、利用单片机并行 I/O 口控制流水灯 。2、利用单片机并行 I/O 口控制蜂鸣器 。三、设计要求 1、用 Proteus 软件画出电路原理图。要求在 P1.0 至 P1.7 口线上分别接 LED0 至 LED7 八个发光二极管,在 P3.0 口线上接一蜂鸣器。2、编写程序:要求 LED0 至 LED7 以秒速率循环右移。3、编写程序:要求 L
2、ED0 至 LED7 以秒速率循环左移。4、编写程序:要求在灯移动的同时,蜂鸣器逐位报警。四、实验报告要求1、实验目的和要求。2、设计要求。3、实验程序流程框图和程序清单。4、电路原理图。5、实验结果6、实验总结。7、思考题。五、思考题1、编程实现 LED0 至 LED7 以十六进制计数规律亮灯 ?参考实验图:程序参考:ORG 0000HLJMP MAIN ORG 00B0HLJMP LOOP1MAIN:MOV SP,#10HMOV A,#01HLOOP:MOV P1,ACLR P3.0LCALL DELAYRL ALJMP LOOPLOOP1:SETB P3.0MOV TH0,#3CHMOV
3、 TL0,#0B0HINC R2CJNE R2,#20,LOOP2CLR TR0LOOP2:RETIDELAY:MOV R2,#00HMOV TMOD,#01HMOV TH0,#0FCHMOV TL0,#03HSETB EASETB ET0SETB TR0DEL:CJNE R2,#20,DEL1LJMP DEL2DEL1:SJMP DELDEL2:RETEND(中断方式)ORG 0000HMOV R0,#2000MOV P1,#0FFHMOV A,#0FEHCPL ALOOP:MOV P1,AMOV P3,#01HLCALL DELRL A ;左移(右移用 RR A)SJMP LOOPDEL:
4、MOV SP,#10HMOV TMOD,#00HMOV TH0,#1EHMOV TL0,#0CHCLR EACLR ET0SETB TR0MOV P1,AMOV P3,#01HDEL1:JNB TF0,DEL1CLR TF0MOV TH0,#1EHMOV TL0,#0CHMOV P3,#00HDJNZ R0,DEL1RETEND思考题参考:ORG 0000HMOV R1,#0FHMOV R0,#2000MOV P1,#0FFHMOV A,#0FEHCPL ALOOP:MOV P1,AMOV P3,#01HLCALL DELINC ADJNZ R1,LOOPSJMP LOOPDEL:MOV SP,#10HMOV TMOD,#00HMOV TH0,#1EHMOV TL0,#0CHCLR EACLR ET0SETB TR0MOV P1,AMOV P3,#01HDEL1:JNB TF0,DEL1CLR TF0MOV TH0,#1EHMOV TL0,#0CHMOV P3,#00HDJNZ R0,DEL1RETEND(查询方式)