比如说显示一行0xf0,按照道理来讲应当是四个灯亮四个灯灭,
但是显示的结果是五个灯亮,3个灭,或者有时候是四个灯亮四个灯灭,有时候是前半行四个灯亮四个灯灭,后半行全亮,这究竟是怎么回事?
能不能请指点下思路?最有可能问题出在什么地方?
顺便说下,关键部分发送给LED单元板的程序如下:
void serial_input(uchar dat1, uchar dat2)
{
uint m;
SHCP=0;
for(m=0;m<8;m++)
{
if(dat1 & 0x80)
DATA1=0;
else
DATA1=1;
if(dat2 & 0x80)
DATA2=0;
else
DATA2=1;
SHCP=1;
NOP;
NOP;
SHCP=0;
NOP;
NOP;
dat1=dat1<<1;
dat2=dat2<<1;
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2. 595的锁存时序没问题吧?
一周热门 更多>