|
发表于 2008-4-22 16:39:28
|
显示全部楼层
plc_avr 烈火狂龙 大虾:我看了你的程序几天,但有几个问体一直搞不明白,望解答
1:移动汉字的原理是什么
如果是只是一个16*16的屏,首先就是选通第一行,然后用2片595发送第一行的列数据,然后关闭第一行,然后选通第二行,然后用2片595发送第二行的列数据,。。。。。。。一直到最后一行,这样就完成了一个汉字的显示。但是移动的原理我真的搞不明白
2:你的程序望解释一下
void display(void)
{
uchar i = Move;
uchar s;
uchar inc,tempyid,temp,temp1=0;
if(i<8) i变量和inc变量是干什么用的,为什么i<8,inc就加一
inc=0;
else
inc=1;
for(s=0+inc;s<screen_size*2+inc;s++) //发送16字节数据
{
if(i<8)
tempyid=i;
else
tempyid=i-8;
temp=((BUFF>>tempyid)|(BUFF[s+1]<<(8-tempyid))); 这条语句是干什么用的,为什么要这样做
HC595_send_2byte(temp,BUFF_1[temp1]); //发送数据
temp1++;
}
}
望解答,谢谢! |
|