【200分】求51单片机交通灯控制程序

来源:百度知道 编辑:UC知道 时间:2024/05/21 12:31:18
东西很少 就6个灯 红黄绿(东西) 红黄绿(南北) 排列接P0口
2个数码显示管接P1 P2口 还有4个按钮接P3口(这个用于做四路抢答器的)这里只需要一个做【启动】按钮 一个做【紧急】按钮
芯片是AT89S51的
程序要求是:
按下【启动】按钮先是全部亮红灯3S之后【东西】亮绿灯 【南北】继续红灯
27S后【东西】绿灯灭 黄灯亮3S之后【东西】黄灯灭亮红灯 【南北】亮绿灯
27S之后黄灯3S重复……
按下【紧急】按钮【东西南北】亮红灯30S 时间过后回到刚【启动】状态

所有倒计时都要用数码管显示,那个0~9的代码你们自己写就行了 我会改的

有什么不清楚的可以HI我
谢谢 200分献上
用汇编或者C都可以 程序加注解就行了 看我要求好吗?我要求很少的,别直接复制过来啊看都不看

发邮箱也可以zmq_5597@163.com

已发你邮箱 谢谢

ORG 0000H
LJMP 0030H

ORG 0030H
MOV SP,#60H
MOV TMOD,#01H ;定时方式设置
MOV TH0,#3CH ;装入初值
MOV TL0,#0B0H
;******************************************************************
; 初始化红绿灯,全亮
;******************************************************************

MOV DPTR,#0FFD8H ;东西入口地址
MOV A,#0C0H
MOVX @DPTR,A ;东西灯全亮
INC DPTR ;FFD9南北入口地址
MOV A,#0C0H
MOVX @DPTR,A ;南北灯全亮
SETB TR0 ;开定时

;******************************************************************
; 东西绿灯,南北红灯段
;******************************************************************
JOD3: MOV DPTR,#0FFD8H
MOV A,#0EDH ;东西绿灯
MOVX @DPTR,A
INC DPTR