读书人

这个点亮数码管的程序为什么有有关问题

发布时间: 2013-01-08 14:02:13 作者: rapoo

这个点亮数码管的程序为什么有问题?

#include<reg52.h>
#include<intrins.h>

sbit dula=P2^6;
sbit wela=P2^7;

char num;
char code table[]={0XAA,0X3F,0X06,0X5B,0X4F,0X66,0X6D};

void main()
{
char temp;
while(1)
{
temp=0xFE;
for(num=0;num<6;num++)
{
wela=1;
P0=_irol_(temp,num);
wela=0;
dula=1;
P0=table[num+1];
dula=0;
}
}
}


为什么板板上显示的不是连续的012345,而是乱七八糟的数?应该怎么改正才能使之显示连续的012345?
[解决办法]
延时加了?特别是P0=table[num+1];后的延时。
http://blog.csdn.net/binzo/article/details/6364977
[解决办法]
闪的太快,LED显示来不及,所以就乱七八糟了,个人同意这个观点。你加个延时试试看。

读书人网 >单片机

热点推荐