做led灯闪烁时数码管也闪烁

来源:百度知道 编辑:UC知道 时间:2024/05/30 22:43:03
C51的开发板,8个led在P1口,8位数码管在P0和P2,做led灯闪烁的时候,数码管也会闪烁,8位全部都在闪烁频率和led灯相同,请问是为什么,是板子的问题还是程序的问题?
#include<reg52.h>
sbit D2=P1^2;
unsigned int a;
void main()
{
D2=0;
for(a=0;a<=10000;a++){};
D2=1;
for(a=0;a<=10000;a++){};
}

将程序写在一个循环内实现闪烁吧,或在程序最后加个死循环while(1){}让它闪烁一次吧,让程序停下来,否则程序将结束main函数,并重新开始程序,此种闪烁方法是不被推荐的...

仅从你贴的这段来看,与程序无关。
可能是LED电流过大,供电打嗝现象。

我的情况跟你一样,在没有对数码管进行任何操作时,数码管8个引脚时高电平的。如果想消除这情况,那么就要控制4个公共极为低电平或P0=0x00.就那么简单。