当前位置:首页 >> 电子/电路 >>

单片机汇编语言设计的交通灯


单片机汇编语言设计的交通灯
设计要求:用AT89c51 设计,要有驱动程序,东西南北方向的交通灯 用六个指示灯分别别表示两个方向的红黄绿灯,要有复位功能,晶振为12MHZ,同时用数码管显示倒计时时间,可用按钮实现控制通行时间(自加,自减)我来帮他解答
AJMP S1
SEVER:CLR EX0
PUSH 34H
PUSH 30H
PUSH 31H
PUSH PSW
PUSH DPH
PUSH DPL
MOV 40H,A
MOV 41H,R7
MOV 42H,R1
MOV 34H,#00010000B
MOV P1,#0FH
MOV R6,#0AH
LAST1:LCALL PTFO3
LCALL LED
LCALL DELAY2
DJNZ R6,LAST1
MOV P1,R0
MOV A,40H
MOV R7,41H
MOV R1,42H
POP DPL
POP DPH
POP PSW
POP 31H
POP 30H
POP 34H
SETB EX0
RETI

PTFO1:MOV P1,R0
LCALL PTFO3
LCALL LED
LCALL DELAY2
DJNZ R2,PTFO1
RET
PTFO2:MOV R0,35H
MOV P1,R0
LCALL PTFO3
LCALL LED
LCALL DELAY1
MOV R0,36H
MOV P1,R0
LCALL DELAY1
DJNZ R2,PTFO2
RET
DELAY1:MOV R7,#0AH
AJMP DELAY
DELAY2:MOV R7,#14H
DELAY:CLR EX0
MOV TMOD,#01H
MOV TL0,#00H
MOV TH0,#4CH
SETB TR0
HERE:JBC TF0,NEXT1
SJMP HERE
NEXT1:MOV TL0,#00H
MOV TH0,#4CH
DJNZ R7,HERE
CLR TR0
SETB EX0
RET

LED:MOV DPTR,#0FF82H
MOV A,#90H
MOVX @DPTR,A
MOV R1,#30H
MOV R7,#02H
MOV DPTR,#0FF80H
LOOP:MOV A,@R1
ADD A,#05H
MOVC A,@A+PC
MOVX @DPTR,A
INC R1
DJNZ R7,LOOP
RET
DB 3FH,06H,5BH,4FH,66H,6DH
DB 7DH,07H,7FH,6FH
PTFO3:MOV A, 34H
CLR C
SUBB A,#01H
JNB PSW.6,NEXT
CLR C
SUBB A,#06H
NEXT:MOV 34H,A
ANL A,#0FH
MOV 30H,A
MOV A,34H
ANL A,#0F0H
SWAP A
MOV 31H,A
RET
END
另外:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP SEVER
ORG 0030H
MAIN:MOV DPTR,#0FF82H
MOV A,#0D1H
MOVX @DPTR,A
WAIT:MOVX A,@DPTR
JB ACC.7,WAIT
MOV A,#00H
MOVX @DPTR,A
MOV A,#2CH
MOVX @DPTR,A

SETB EA
SETB EX0
CLR IT0
CLR 00H
CLR 01H

MOV 60H,#05H ;起始5秒
MOV 61H,#05H ; ;;5秒显示
MOV 62H,#14H ;20秒
MOV 63H,#20H ;;20秒显示
MOV 64H,#03H ;;3秒
MOV 65H,#03H ;;3秒显示
MOV 66H,#0AH ; ;10秒
MOV 67H,#10H ; ;10秒显示

MAIN1:LCALL SEACH1
JBC 00H,START
AJMP MAIN1
START:MOV 34H,61H
MOV R2,60H
MOV R0,#0FH
LCALL PTFO1
S1:MOV 34H,63H
MOV R0,#96H
MOV R2,62H
LCALL PTFO1

MOV R2,64H
MOV 34H,65H
MOV 35H,#9FH
MOV 36H,#06H
LCALL PTFO2

MOV R2,62H
MOV 34H,63H
MOV R0,#69H
LCALL PTFO1

MOV R2,64H
MOV 34H,65H
MOV 35H,#6FH
MOV 36H,#09H
LCALL PTFO2
AJMP S1
SEVER:CLR EX0
PUSH 34H
PUSH 30H
PUSH 31H
PUSH PSW
PUSH DPH
PUSH DPL
MOV 40H,A
MOV 41H,R7
MOV 42H,R1
MOV 34H,67H
MOV P1,#0FH
MOV R6,66H
LAST1:LCALL PTFO3
LCALL LED
LCALL DELAY2
DJNZ R6,LAST1
MOV P1,R0
MOV A,40H
MOV R7,41H
MOV R1,42H
POP DPL
POP DPH
POP PSW
POP 31H
POP 30H
POP 34H
SETB EX0
RETI

PTFO1:MOV P1,R0
LCALL PTFO3
LCALL LED
LCALL DELAY2
MOV DPTR,#0FF82H
MOVX A,@DPTR
ANL A,#07H
JZ NEXT1
LCALL KEY
JBC 01H,NEXT11
NEXT1: DJNZ R2,PTFO1
RET
NEXT11:LCALL SEACH1
JBC 00H,NEXT1
SJMP NEXT11
PTFO2:MOV R0,35H
MOV P1,R0
LCALL PTFO3
LCALL LED
LCALL DELAY1
MOV R0,36H
MOV P1,R0
LCALL DELAY1
MOV DPTR,#0FF82H
MOVX A,@DPTR
ANL A,#07H
JZ NEXT2
LCALL KEY
JBC 01H,NEXT12
NEXT2: DJNZ R2,PTFO2
RET
NEXT12:LCALL SEACH1
JBC 00H,NEXT2
SJMP NEXT12
DELAY1:MOV R7,#0AH
AJMP DELAY
DELAY2:MOV R7,#14H
DELAY:CLR EX0
MOV TMOD,#01H
MOV TL0,#00H
MOV TH0,#4CH
SETB TR0
HERE:JBC TF0,NEXT13
SJMP HERE
NEXT13:MOV TL0,#00H
MOV TH0,#4CH
DJNZ R7,HERE
CLR TR0
SETB EX0
RET

LED:MOV DPTR,#0FF82H
MOV A,#90H
MOVX @DPTR,A
MOV R1,#30H
MOV R7,#02H
MOV DPTR,#0FF80H
LOOP:MOV A,@R1
ADD A,#05H
MOVC A,@A+PC
MOVX @DPTR,A
INC R1
DJNZ R7,LOOP
RET
DB 3FH,06H,5BH,4FH,66H,6DH
DB 7DH,07H,7FH,6FH
PTFO3:MOV A, 34H
CLR C
SUBB A,#01H
JNB PSW.6,NEXT
CLR C
SUBB A,#06H
NEXT:MOV 34H,A
ANL A,#0FH
MOV 30H,A
MOV A,34H
ANL A,#0F0H
SWAP A
MOV 31H,A
RET

KEY:MOV DPTR ,#0FF82H
MOV A,#40H
MOVX @DPTR,A
MOV DPTR,#0FF80H
MOVX A,@DPTR
ANL A,#3FH

CJNE A,#0AH,KEY1
SETB 00H
AJMP RETUN



KEY1:CJNE A,#0BH,KEY2
SETB 01H
AJMP RETUN

KEY2:CJNE A,#0CH,KEY3
ACALL SEACH2
MOV DPTR ,#0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR1
ERROR1:JC NEXT3
MOV 61H,#05H
AJMP RETUN
NEXT3:SWAP A
MOV 61H,A
ACALL SEACH2
MOV DPTR, #0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR2
ERROR2:JC NEXT4
MOV 61H,#05H
AJMP RETUN
NEXT4:ORL 61H,A
MOV A,61H
LCALL BCDH
MOV 60H,A
AJMP RETUN

KEY3:CJNE A,#0DH,KEY4
ACALL SEACH2
MOV DPTR, #0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR3
ERROR3:JC NEXT5
MOV 63H,#20H
AJMP RETUN
NEXT5:SWAP A
MOV 63H,A
ACALL SEACH2
MOV DPTR ,#0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR4
ERROR4:JC NEXT6
MOV 63H,#20H
AJMP RETUN
NEXT6:ORL 63H,A
MOV A,63H
LCALL BCDH
MOV 62H,A
AJMP RETUN

KEY4:CJNE A,#0EH,KEY5
ACALL SEACH2
MOV DPTR ,#0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR5
ERROR5:JC NEXT7
MOV 65H,#03H
AJMP RETUN
NEXT7:SWAP A
MOV 65H,A
ACALL SEACH2
MOV DPTR ,#0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR6
ERROR6:JC NEXT8
MOV 65H,#03H
AJMP RETUN
NEXT8:ORL 65H,A
MOV A,65H
LCALL BCDH
MOV 64H,A
AJMP RETUN

KEY5:CJNE A,#0FH,RETUN
ACALL SEACH2
MOV DPTR ,#0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR7
ERROR7:JC NEXT9
MOV 67H,#10H
AJMP RETUN
NEXT9:SWAP A
MOV 67H,A
ACALL SEACH2
MOV DPTR, #0FF80H
MOVX A,@DPTR
ANL A,#3FH
CJNE A,#09H,ERROR8
ERROR8:JC NEXT10
MOV 67H,#10H
AJMP RETUN
NEXT10:ORL 67H,A
MOV A,67H
LCALL BCDH
MOV 66H,A
AJMP RETUN
RETUN: RET


SEACH1:MOV DPTR,#0FF82H
MOVX A,@DPTR
ANL A,#07H
JZ RETUN1
LJMP KEY
RETUN1:RET
SEACH2:MOV DPTR,#0FF82H
MOVX A,@DPTR
ANL A,#07H
JNZ RETUN3
SJMP SEACH2
RETUN3:RET
;;(20)标号:BCDH 功能:单字节BCD码整数转换成单字节十六进制整数

;;入口条件:待转换的单字节BCD码整数在累加器A中。
;;;出口信息:转换后的单字节十六进制整数仍在累加器A中。
;;;;;影响资源:PSW、A、B、R4 堆栈需求: 2字节

BCDH: MOV B,#10H ;;;分离十位和个位
DIV AB
MOV R4,B ;;;暂存个位
MOV B,#10 ;;;;将十位转换成十六进制
MUL AB
ADD A,R4 ;;;;;;按十六进制加上个位
RET


END

相关文章:
基于51单片机汇编语言设计的交通灯.doc
基于51单片机汇编语言设计的交通灯 - 交通灯的控制 摘要: 本设计以 AT89
单片机汇编语言设计的交通灯.txt
单片机汇编语言设计的交通灯 - 单片机汇编语言设计的交通灯 设计要求:用AT89
基于51单片机汇编语言设计的交通灯.doc
基于51单片机汇编语言设计的交通灯 - 交通灯的控制 摘要: 本设计以 AT89
用51单片机控制交通灯汇编语言编写_图文.doc
用51单片机控制交通灯汇编语言编写 - 基于 51 单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提 高道路...
基于51单片机汇编语言设计的交通灯毕业论文.doc
基于51单片机汇编语言设计的交通灯毕业论文 - 交通灯的控制 摘要: 本设计以
基于51单片机汇编语言设计的交通灯毕业设计论文.doc
基于51单片机汇编语言设计的交通灯毕业设计论文 - 交通灯的控制 摘要: 本设计
单片机课程设计---交通灯.doc
单片机课程设计---交通灯_工学_高等教育_教育专区。交通灯单片机技术》课程...程序设计采用的是汇编语言编写,本设计是十字路口交通灯,S1 为甲路主干 道控制...
基于单片机的交通灯的设计报告(汇编语言) (1)_图文.doc
基于单片机的交通灯设计报告(汇编语言) (1) - 交通灯的设计报告 摘要: 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控 制检测技术日益更新...
基于单片机的交通灯的设计报告(汇编语言)_图文.doc
基于单片机的交通灯设计报告(汇编语言)_信息与通信_工程科技_专业资料。单片机 交通灯 汇编语言 交通灯的设计报告摘要: 摘要: 近年来随着科技的飞速发展,单片机的...
【完整版】555基于51单片机汇编语言设计的交通灯毕业论....doc
【完整版】555基于51单片机汇编语言设计的交通灯毕业论文设计_工学_高等教育_
【精品】555基于51单片机汇编语言设计的交通灯毕业论文....doc
【精品】555基于51单片机汇编语言设计的交通灯毕业论文设计_工学_高等教育_教
单片机课程设计 基于8255A的交通灯.doc
单片机课程设计 基于8255A的交通灯_高等教育_教育专区。单片机课程设计 基于8255A...3、通过单片机课程设计,熟练掌握汇编语言的编程方法,将理论联系到实践中 去,提高...
单片机交通灯课程设计报告[1].doc
单片机交通灯课程设计报告[1]_电子/电路_工程科技_专业资料。单片机交通灯课程...设计目的 (1)加强对单片机汇编语言的认识,充分掌握和理解设计各部分 的工作...
基于51单片机的智能交通灯系统设计.doc
基于51单片机的智能交通灯系统设计 - 基于 51 单片机的智能交通灯系统设计 1 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的...
单片机课程设计交通灯设计.doc
单片机课程设计交通灯设计_工学_高等教育_教育专区。测控技术与仪器专业 课程设计...熟练掌握汇编语言的编程方法,将理论联系到实践中 去,提高我们的动脑和动手的能力...
单片机proteus仿真设计交通灯(汇编语言).doc
单片机proteus仿真设计交通灯(汇编语言)_其它_高等教育_教育专区。51单片机,proteus仿真设计,汇编语言程序的交通灯毕业设计... 课程设计成果说明书 题目 :城市交道口...
单片机课程设计-现代交通灯的设计.doc
设计时按红绿交 通灯控制程序和特种车辆经过中断程序两大部分。 本系统以 AT89C51 单片机为核 心, 采用汇编语言编程, 设计的交通灯可用于十字路口的车辆及行人...
基于AT89C51单片机的交通灯控制系统设计_图文.ppt
基于AT89C51单片机的交通灯控制系统设计 - 基于AT89C51单片机的 交通灯控制系统设计 ? ? ? ? ? ? 1.1 项目概述 1.2 项目要求 1.3 系统设计 1.4 硬件...
单片机交通灯课程设计报告(含电路图_源程序).doc
单片机交通灯课程设计报告(含电路图_源程序)_电子/电路_工程科技_专业资料。摘...设计目的 (1)加强对单片机汇编语言的认识,充分掌握和理解设计各部分的工作原理...
单片机交通灯课程设计1...doc
设计任务与要求 2.1 设计任务通过单片机课程设计, 熟练掌握汇编语言的编程方法,将理论联系到实践中 去,提高我们的动脑和动手的能力;通过交通信号灯控制系统的...
更多相关标签: