当前位置: 代码迷 >> 单片机 >> 一个在频率下是否相互冲突的有关问题
  详细解决方案

一个在频率下是否相互冲突的有关问题

热度:101   发布时间:2016-04-28 15:47:26.0
一个在频率上是否相互冲突的问题
用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?
  相关解决方案