闪烁LED小灯的设计 - 图文 联系客服

发布时间 : 星期四 文章闪烁LED小灯的设计 - 图文更新完毕开始阅读d637903d27284b73f242505a

发生交通事故时,交通灯红灯全亮,且数码管显示0

19

有特殊情况是只有东西通行。

20

附录B 1.系统程序

#include sbit p1_0=P1^0; sbit p1_1=P1^1; sbit p1_2=P1^2; sbit p1_3=P1^3; sbit p1_4=P1^4; sbit p1_5=P1^5; sbit p0_0=P1^6;

bit flag=0; //定义显示状态控制位 int ns_time; int ew_time; int ns_time_red=20; int ns_time_green=15; int ns_time_yellow=5; int ew_time_red=20; int ew_time_green=15; int ew_time_yellow=5;

char point=20; //定时的控制次数初值设定

int a=0; //南北,东西两方向切换状态标志初值设定 delay(int t) //延时子函数

21

{

while(t--); }

display(int time) //显示子函数 { char

table[10]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09}; 共阳极数码显示0-9对应的字型码 char i,a[2];

a[0]=time; //时间个位数赋值给a[0] a[1]=time/10; //时间十位数赋值给a[1] SM1=0;SM0=0; //串行口工作方式0设定 for(i=1;i>=0;i--) //将数送到SBUF区域 {SBUF=table[a[i]];

while(!TI) ; //判断是否发送完一个数据 TI=0; //若发送完,0赋给TI } }

void main(void) {

TMOD=0x01; //设置定时方式1 TH0=0x3c; //定时初值50MS TL0=0xb0;

22

//