比如开机1分钟后点亮LED。
#include<reg51.h>

#define uchar unsigned char
uchar num,sec;
sbit LED=P1^0;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
num++;
if(num>=20)
{
num=0;
sec++;
if(sec>=60)
{
TR0=0;

LED=0;
}
}
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
LED=1;
num=0;

sec=0;
while(1);
}
如果你的单片机端口有强的推挽输出能力,那就很好办了。假设端口是P1,LX3~0接P1.7~1.4,LY3~0接P1.3~1.0,那么电量D115就在P1输出00101011,你想电量哪个灯,就在LX3~0上选择对应的输出1,LY3~0上对应的输出0.


