一个在频率上是否相互冲突的问题
用C语言写了一个抢答器的程序,下面是一个60秒倒计时的程序,当我给他们的延时都是20的时候,左边跳得很厉害,我就慢慢把左边时间弄短,发现越来越暗,而且还是跳,我就把它的时间弄长点,开始是亮了,而且频率也越来越快了。终于他不再跳了,也很亮,右边又开始跳了,如果把他们相同都调到很大时间的时候,表现的形式是一样的(都跳得很快),到了40以下它就一定会是一边正常一边跳得很快,单个程序就没有问题。这是不是有什么冲突呢?
void delays(uchar count)
{
uchar i,j;
for(i=count;i>0;i--)
for(j=count;j>0;j--);
}
void display(uchar shi,uchar ge)
{
DU=1;
P0=0xEF;
DU=0;
WE=1;
P0=table[shi];
WE=0;
delays(20);
DU=1;
P0=0xDF;
DU=0;
WE=1;
P0=table[ge];
WE=0;
delays(20);
}
[解决办法]
晕哦,还以为是无线通信的问题
看完LZ描述,猜出来是数码管的问题。闪是因为刷新频率不够,亮度低是因为开启时间过短
LZ可不可以用下定时器中断来刷显示?别啥玩艺儿都放main里面
[解决办法]
楼主莫非用的是LCD?