文档详情

单片机并口简单应用(流水灯、数码管)实验报告6-1.docx

发布:2017-05-03约4.24千字共12页下载文档
文本预览下载声明
实验一 单片机并口简单应用(流水灯、数码管) 实验目的 1、了解简单单片机应用系统的设计方法。 2、了解单片机汇编语言程序的基本结构 3、了解单片机汇编语言程序的设计和调试方法 4、掌握应用PROTEUS仿真软件的操作方法。 5、掌握应用KEIL软件编辑、编译源汇编程序的操作方法。 6、培养良好的实验习惯。? 实验内容 AT89S51为主控芯片,用PROTEUS仿真设计简单单片机应用系统。 编程实现8个发光LED“流水”的现象,用一个按键控制灯的上、下、开花三种状态,先用查询。 用四个数码管开始现实185,做二个按键,加5,减4,最多加到210,最多减到150。 发辉部分:修改程序,用中断完成以上功能,用六位数码管显示学号后六位。 实验原理 1、流水灯 (1)实验原理图(可打印) (2)实验程序(必须手写) 流水灯中断 ORG 0000H AJMP MAIN ORG 0003H AJMP KEY MAIN:CALL INIT LOOP:CALL MOVE CALL DELAY AJMP LOOP INIT:MOV R3,#0FEH MOV R4,#0 MOV P2,#0FFH MOV R0,#00H SETB IT0 SETB EX0 SETB EA RET MOVE:CJNE R0,#00H,MOV2 MOV A,R3 RL A MOV R3,A MOV P2,R3 MOV2:CJNE R0,#01H,MOV3 MOV A,R3 RR A MOV R3,A MOV P2,R3 MOV3:CJNE R0,#02H,LEND MOV DPTR,#TAB MOV R7,#0 MOV R6,#4 LOP: MOV A,R7 MOVC A,@A+DPTR MOV P2,A LCALL DELAY INC R7 DJNZ R6,LOP LEND: RET KEY: PUSH PSW PUSH ACC MOV A,R0 INC A CJNE A,#03H,HU1 MOV A,#00H HU1: MOV R0,A POP ACC POP PSW RETI DELAY:MOV R2,#150 DE1: MOV R5,#200 DJNZ R5,$ DJNZ R2,DE1 RET TAB: DB 0e7H,0dbH,0bdH,07eH END ;OK 查询 ORG 0000H AJMP START START: MOV R3,#0FEH MOV R4,#0 MOV P2,#0FFH MOV R0,#00H MAIN: CALL DET CALL MOVE AJMP MAIN DET: JB P3.2,DEND JNB P3.2,$ MOV A,R0 INC A MOV R0,A CJNE A,#03H,DEND MOV R0,#00H DEND:RET MOVE:CJNE R0,#00H,MOV2 MOV A,R3 RL A MOV R3,A MOV P2,R3 MOV2:CJNE R0,#01H,MOV3 MOV A,R3 RR A MOV R3,A MOV P2,R3 MOV3:CJNE R0,#02H,LEND MOV DPTR,#TAB MOV R7,#0 MOV R6,#4 LOP: MOV A,R7 MOVC A,@A+DPTR MOV P2,A LCALL DELAY INC R7 DJNZ R6,LOP LEND: RET DELAY: MOV R4,#250 DE1: MOV R5,#200 DJNZ R5,$ DJNZ R4,DE1 RET TAB: DB 0e7H,0dbH,0bdH,07eH END ;OK 2、数码管显示 (1)实验原理图(可打印) 实验程序(可打印) 数码管 查询 ORG 0000H AJMP MAIN MAIN: MOV R2,#000 MOV R3,#185 MANAGE: LCALL COMPUTING LCALL BCD LCALL DISPLAY AJMP MANAGE COMPUTING: JB P3.1,SU JNB P3.1,$ INC R3 INC R3 INC R3 INC R3 INC R3 CJNE R3,#210,PD1 PD1: JC LEND MOV R3,#210 SU: JB P3.
显示全部
相似文档