用C语言在·at89c51单片机点亮一个led灯

如题所述

第1个回答  2020-01-05
用c啊,我想想:
1、和硬件有点儿关系,这个你清楚么?
2、假设led连接到p1口吧。第一个灯接到p1.0。阴极接io,阳极接5v。
#include
bit
secflag;
unsigned
char
ms;
void
display(unsigned
char
num,unsigned
char
sec)
{
num%=8;
p1=~(1<
>8;tl0=-50000;
ms++;
if(ms>20){ms=0;secflag=1;}//12mhz,
50ms定时中断,1秒计时。
}
你很容易扩展出任意要求的闪烁流水灯啦。
display(2,1);
display(1,1);
display(3,2);
display(1,2);
……放到while里面就好了。祝你玩得开心。
第2个回答  2019-12-08
假设你单片机的P1口连了led灯:
#include
sbit
led
=
P1^0;//这是点第一位灯
int
main(void)
{
while(1)
{
led
=
0;//假设led灯为共阳极的
}
return
0;
}
点亮led灯的形式有很多,这里给出一种仅供参考
相似回答