发布网友
共2个回答
热心网友
应该是红灯亮20S,黄灯闪3S,绿灯亮20S,如此反复吧。
#include<reg51.h>
unsigned char time,num;
sbit ledr=P1^0;
sbit ledy=P1^1;
sbit ledg=P1^2;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
num++;
if(num>=10){time++;num=0;}
if(time<40){ledr=0;ledy=1;ledg=1;}
if(time>=40 && time<46){ledr=1;ledy=~ledy1;ledg=1;}
if(time>46){ledr=1;ledy=1;ledg=0;}
if(time>=86)time=0;
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
while(1);
}
热心网友
你好!为什么红灯闪 30 秒?