中级会员

主题
帖子
积分28
阅读权限20
注册时间2016-4-7
最后登录1970-1-1
在线时间 小时
|
一块16*64屏是2片74HC245,8片4953,2片138,8片595,2片138驱动的,P3.75的屏,驱动板是自己的,两块屏直接连到H08口上,但是显示的时候字体是从第四位开始的,四位之前都是全亮以下是部分驱动代码
void load_data(void) //装载数据2个16*64点阵的 缓存区
{
char a;
for(a=4;a>=0;a--)
{
BUFF[2*a]=hanzi[zimuo+32*a+2*line];
BUFF[2*a+1]=hanzi[zimuo+1+32*a+2*line];
}
}
void send_data (void) //发送数据
{
uchar s;
uchar inc,tempyid,temp,k;
if((Move<8))
inc=0;
else
inc=1;
for(s=0+inc;s<16+inc;s++) //发送16字节数据
{
if(Move<8)
tempyid=Move;
else
tempyid=Move-8;
temp = ((BUFF>>tempyid)|(BUFF[s+1]<<(8-tempyid)));//h1左移tempyid位后和h2右移8-tempyid相或,取出移位后的数据。
for(k=0;k<8;k++)//一个字节8位 发送
{
R1=temp&0x01;
CLK = 0;
CLK = 1;
temp=temp>>1;
}
}
}
|
|