设计一数显交通灯信号系统,用来实现十字路口的交通信号灯智能化管理,用来控制过

发布时间:2019-08-11 18:33:36

设计一数显交通灯信号系统,用来实现十字路口的交通信号灯智能化管理,用来控制过

推荐回答

这里有AVR单片机控制红绿灯的案例。

程序清单:(环境ICCAVR)

#include<iom32v.h>unsigned char CodeTab[]={0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80,0x90, };void delay(int d1,int d2)        //延时程序{int i,j;for(i=0;i<d1;i++){for(j=0;j<d2;j++);}}void Acnt(int a,int b,int s)     //倒数程序{int i;i=s;for(i;i>=1;i--){dis(a,b);a--;b--;}};void dis(int a,int b)           //动态显示程序,周期1s{int i,j,k,l,n;i=a/10;j=a%10;k=b/10;l=b%10;n=0;/*此处动态显示4位数字*/for(n;n<=3;n++){PORTD=0x01;PORTC=CodeTab[i];delay(50,60);PORTD=0x04;PORTC=CodeTab[k];delay(50,60);PORTD=0x02;PORTC=CodeTab[j];delay(50,60);PORTD=0x08;PORTC=CodeTab[l];delay(50,60);}}void s1(void)                   //四种状态{PORTB=0xde;//delay(1000,300);Acnt(30,25,25);}void s2(void){PORTB=0xee;//delay(1000,300);Acnt(5,5,5);}void s3(void){PORTB=0xf5;//delay(1000,300);Acnt(20,25,20);}void s4(void){PORTB=0xf3;//delay(1000,300);Acnt(5,5,5);}int main(void){DDRB=0xff;DDRC=0xff;DDRD=0xff; //初始化三组输出引脚;while(1){s1();s2();s3();s4();}}

程序自己编的 有问题可以Q 394485563

以上问题属网友观点,不代表本站立场,仅供参考!