单片机 用汇编语言编写交通红绿灯 只要求红灯30秒,黄灯5秒,绿灯30秒,黄灯5秒,其他不限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机 用汇编语言编写交通红绿灯 只要求红灯30秒,黄灯5秒,绿灯30秒,黄灯5秒,其他不限相关的知识,希望对你有一定的参考价值。

设用P1.0做电源控制,P1.1 P1.2 P1.3分别控制红、绿和黄灯。
MOV P1,#0;置灯全暗
JNB P1.0,$;P1.0=0时则等待通电
STA:SETB P1.1;点亮红灯
LCALL DEL;延时30S
CLR P1.1;灭红灯
STEB P1.3;亮黄灯
LCALL DEL;延时5秒
SETB P1.2;亮绿灯
LCALL DEL;延时30S
CLR P1.2;灭绿灯
STEB P1.3;亮黄灯
LCALL DEL;延时5秒
SJMP STA;转STA处
DEL:MOV R7,#240;
DEL1:MOV R6,#250;
DEL2:MOV R5,#250;
DJNZ R5,$;
DJNZ R6,DEL2;
DJNZ R7,DEL1;
RET;

求运行结果 奚风说下QQ,你帮我改下,我不太会改了,总觉得代码太短了

看你的程序上没有很大的问题,但是你的延时都使用相同子程序,延时时间相同。你可以把延时30秒的子程序和延时5秒的程序分开来写,分别调用。另单片机的引脚一般为吸入电流,建议你将单片机的引脚输出改为0有效就可以直接接负载,电源控制按键判断也作出相应的修改。 参考技术A 如果你会用c来编写的话,你可以编写好后,看看汇编的代码就可以了,
其实你的问清楚,汇编有很多种,例如51的就和8088的不一样。。
参考技术B 给你写个炸弹程序
SETB 南北红灯
CLR 南北绿灯
ACALL YS30MS:30秒
SETB 黄灯
ACALL YS5MS :5秒
CLR 南北红灯
STB 南北绿灯
下面的我就不写了

需要的联系我

基于51单片机交通灯设计时间可设置仿真红绿灯十字路口

功能操作说明:
从上到下,设置键,加键,减键,特殊键。单独一个按键为单片机复位按键。
打开仿真文件开始仿真,程序开始数码管倒计时,没有按键按下程序循环运行。
1,东西方向为绿灯,行人和车辆东西方向可以同行东西绿灯时间长20s。南北方向为红灯行人车辆禁止同行时长25s。
2,东西方向黄灯闪烁5秒,南北方向还是红灯等待,警示车辆和行人状态即将切换。
3,南北方向为绿灯,行人和车辆南北方向可以同行东西绿灯时间长20s。东西方向为红灯行人车辆禁止同行时长25s。
4,南北方向黄灯闪烁5秒,东西方向还是红灯等待,警示车辆和行人状态即将切换。
设置按键按下可以进行红灯和绿灯时间调整,加键调整时间。调整完后再次按下设置程序回到倒计时运行。
特殊模式键按下第一次红灯全亮,数码管显示全为0代表紧急模式停止同行。再次按下数码管显示为全FF,代表夜间模式。,再次按下回到数码管倒计时状态。

以上是关于单片机 用汇编语言编写交通红绿灯 只要求红灯30秒,黄灯5秒,绿灯30秒,黄灯5秒,其他不限的主要内容,如果未能解决你的问题,请参考以下文章

模拟交通灯 单片机C51,要电路图和程序

基于51单片机的十字红绿黄交通灯Proteus仿真设计 按键+串口

用PLC控制交通灯信号

基于51单片机交通灯设计时间可设置仿真红绿灯十字路口

基于51单片机交通灯设计时间可设置仿真红绿灯十字路口

十字路口交通灯控制——STEP7+S7300PLC