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

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


单片机汇编语言设计的交通灯
设计要求:用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


相关文章:
交通灯单片机汇编语言
关键词:电子竞赛智能交通灯程序 1/2 相关文档推荐 单片机交通灯程序(汇编语言... 2页 2财富值 基于单片机的交通灯设计... 11页 10财富值 基于单片机的交通...
单片机交通灯程序(汇编语言)
单片机交通灯程序(汇编语言)_计算机软件及应用_IT/计算机_专业资料。用P0口的八...用汇编语言编写的交通灯... 4页 免费 汇编语言交通灯程序及专... 2页 免费...
基于单片机的交通灯的设计报告(汇编语言) (1)
基于单片机的交通灯设计报告(汇编语言) (1) 隐藏>> 交通灯的设计报告摘要: 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控 制检测技术日益...
单片机proteus仿真设计交通灯(汇编语言)
单片机proteus仿真设计交通灯(汇编语言)_其它_高等教育_教育专区。51单片机,proteus仿真设计,汇编语言程序的交通灯毕业设计...课程设计成果说明书 题目 :城市交道口交通...
基于单片机 汽车转向灯 汇编语言实现_图文
基于单片机 汽车转向灯 汇编语言实现 - 单片机课程设计 摘要 随着社会的发展,汽车逐渐成为现代社会的一种重要交通工具。道路上到处 都是飞速的汽车。如何保证行人...
单片机流水灯汇编语言设计设计 - 副本
单片机流水灯汇编语言设计设计 - 副本_信息与通信_工程科技_专业资料。单片机实验 流水灯设计——心形 流水灯-单片机 汇编程序设计安徽工程大学机电学院通信 1401 ...
51单片机(呼吸灯)汇编语言版
长江工程职业技术学院单片机实训报告 单片机实训课程之:呼吸灯 一.设计要求 二.相关原理 三.论证分析 四.硬件原理 五.软件程序设计 六.测试方法与结果 七.使用...
单片机课程设计汇编语言程序
单片机课程设计(交通灯程... 6页 1下载券喜欢此文档的还喜欢 ...;流水灯汇编语言程序代码: MAIN:MOV A,#0FEH MOV R3,#08H LOOP:MOV P2,...
单片机汇编语言程序设计的基本步骤如下
单​片​机单片机汇编语言程序设计的基本步骤如下: ⑴题意分析 ⑵画出程序流程图 ⑶分配内存工作区 ⑷编制汇编源程序 ⑸仿真、调试程序 ⑹固化程序 ...
单片机汇编语言跑马灯
4、了解单片机汇编语言程序的设计和调试方法。 二、实验原理 1、实验板硬件电路图 2、单片机流水灯程序设计 (1)流水灯程序设计思路及程序流程。实现流水灯的方法有...
更多相关标签: