对8255A接口芯片进行编程,使红、黄、绿LED信号灯按照十字路口交通灯的形式点亮或熄灭。设有一个十字路口,两组信号灯分别代表东西和南北两个方向,其红、黄、绿灯变化规律如下: (1)两个方向红灯全点亮,绿灯、黄灯熄灭。 (2)东西方向绿灯点亮,南北方向红灯点亮。 (3)东西方向绿灯熄灭,南北方向红灯点亮。 (4)两个方向黄灯点亮,红灯、绿灯熄灭。 (5)两个方向黄灯熄灭,红灯、绿灯熄灭。 步骤(4)和(5)循环64次,实现黄灯闪烁。 (6)两个方向红灯全点亮,绿灯、黄灯熄灭。 (7)东西方向红灯点亮,南北方向绿灯点亮,黄灯熄灭。 (8)东西方向红灯点亮,南北方向绿灯熄灭,黄灯熄灭。。 (9)两个方向黄灯闪烁,与步骤(4)和(5)相同。 (10)转向(2)循环执行。
2023-01-12 11:57:37 47.98MB 汇编语言 proteus 交通灯 8255A
1
模拟仿真真实情景下交通信号灯的运转过程,内含C51工程与Proteus ISIS仿真程序。
2022-10-29 20:12:06 32KB 信号灯 Proteus交通灯
1
本代码实现了使用proteus对交通灯进行仿真,还加上了DS1302计时功能。代码实现了基本的交通指挥功能,可供参考
2021-11-30 15:46:52 211KB proteus 交通灯 DS1302 仿真
1
强大的交通灯,大神制作,https://blog.csdn.net/qq_40608730/article/details/106082696
2021-07-15 09:21:45 143KB 仿真 proteus 交通灯 51单片机
1
设计一个十字路口交通信号灯控制器,其要求如下: 1.满足如图4.1顺序工作流程。 图中设南北方向的红、黄、绿灯分别为NSR、NSY、NSG,东西方向的红、 黄、绿灯分别为EWR、EWY、EWG。 它们的工作方式,有些必须是并行进行的,即南北方向绿灯亮,东西方向红 灯亮;南北方向黄灯亮,东西方向红灯亮;南北方向红灯亮,东西方向绿灯亮;南北方向红灯亮,东西方向黄灯亮。 2. 应满足两个方向的工作时序:即东西方向亮红灯时间应等于南北方向亮黄、绿灯时间之和,南北方向亮红灯时间应等于东西方向亮黄、绿灯时间之和。时序工作流程图见图4.2所示。 图3.3中,假设每个单位时间为3秒,则南北、东西方向绿、黄、红灯亮时间分别为15秒、3秒、18秒,一次循环为36秒。其中红灯亮的时间为绿灯、黄灯亮的时间之和,黄灯是间歇闪耀。
2021-06-30 08:46:27 20KB proteus 交通灯 数电设计
1
在proteus 下作的纯数电搭建的交通灯仿真 仅用 定时器和触发器 门电路等搭建 适合数字电子技术课程设计的参考
2021-06-17 17:33:27 123KB proteus 交通灯
1
8086交通信号灯,基于proteus仿真.有一个十字路口,每个路口有三种信号灯,可以根据需要变换,到达控制交通的作用.本代码可以学习.
2021-06-14 15:15:11 53KB 8086 可用 proteus 交通灯
1
#include #define uchar unsigned char #define uint unsigned int unsigned char code ledChar[]= { 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, //CA数码管编码 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E }; unsigned char ledBuff[2]= { 0xFF, 0xFF //初始化数码管 }; uint count=0; uint x=0; uint time1=15; uint time2=20; Ledshow() { if(x == 0) { if(time1 >=0) { P1 = 0x0c; } } if(x == 1) { if(time1>=0) { P1 = 0x0a; } } if(x == 2) { if(time1>=5) { P1 = 0x21; } if (time1=5) { P1 = 0x0A; } }*/ void delay(uint x) { uchar i; while(x--) for(i=0;i<120;i++); } void display() { ledBuff[0]=ledChar[time1/10]; ledBuff[1]=ledChar[time1]; P2=0x01; P0=ledBuff[0]; delay(1); P2=0x02; P0=ledBuff[1]; delay(1); ledBuff[0]=ledChar[time2/10]; ledBuff[1]=ledChar[time2]; P2=0x04; P0=ledBuff[0]; delay(1); P2=0x08; P0=ledBuff[1]; delay(1); Ledshow(); } void main() { TMOD=0x01; TH0=0x3C; TL0=0xb0; TR0=1; EA=1; ET0=1; while(1) { display(); } } void in_TR0() interrupt 1 { TH0=0x3c; //重新赋初值 TL0=0xb0; count++; if (count==20) //我们定义的是1ms中断,要一秒变化一次,让count加到1000 { count=0; //到1000后重新赋初值 time1--; time2--; if(x == 0 && time1 == 0) { time1=5; x = 1; } if(x == 1 && time1 == 0) { time1=20; time2=15; x = 2; } if(x == 2 && time1 ==5) { time2=5; x = 2; } if(x == 2 && time1 ==0) { time1=15; time2=20; x = 0; } } }
2021-06-11 21:11:54 56KB proteus 交通灯 c51
1
单片机程序仿真
2021-05-10 16:02:18 97KB 单片机 proteus 交通灯
1
南昌大学软件学院,单片机课程设计 南昌大学软件学院,单片机课程设计 利用单片机的定时器产生秒信号,控制十字路口的红绿黄灯交替点亮和熄灭,并且用4只LED数码管显示十字路口两个方向的剩余时间。要求能用按键设置两个方向的通行时间(绿灯点亮的时间)和暂缓通行时间(黄灯点亮的时间),系统的工作符合一般交通灯控制要求
2019-12-21 22:01:10 99KB 交通灯 51 proteus仿真 PPT
1