高级会员
主题
帖子
积分4754
阅读权限30
注册时间2010-1-19
最后登录1970-1-1
在线时间 小时
|
yanjian版主你看,我用你的液晶驱动改的显示16X32的字符和19264的图片。
/*显示一个汉字 16x16——————————————————————————————————————————————————————————————————————————*/
//旋转90度:字模被竖着切分
//lin:行(0-3), column: 列(0-11)--(0-3:左屏)(4-7:中屏)(8-11:右屏)
//hzcode: 汉字代码(自定义的)
//uchar code HZtable
void ShowHZ(uchar lin,uchar column,uint hzcode)
{
lin=lin<<1; column=column<<1;
Show88(lin,column, (uchar)(HZTable[hzcode]));
Show88(lin,column+1, (uchar)(HZTable[hzcode]+8));
Show88(lin+1,column, (uchar)(HZTable[hzcode]+16));
Show88(lin+1,column+1,(uchar)(HZTable[hzcode]+24));
}
/*显示16x32图片函数———————————————————————————————————————————————————————————————————————————*/
//lin:行(0-2), column: 列(0-11)--(0-3:左屏)(4-7:中屏)(8-11:右屏)
void Show1632(uchar lin,uchar column,uint hzcode)
{
lin=lin<<1; column=column<<1;
Show88(lin,column, (uchar)(print1632[hzcode]));
Show88(lin,column+1, (uchar)(print1632[hzcode]+8));
Show88(lin+1,column, (uchar)(print1632[hzcode]+16));
Show88(lin+1,column+1,(uchar)(print1632[hzcode]+24));
Show88(lin+2,column, (uchar)(print1632[hzcode]+32));
Show88(lin+2,column+1,(uchar)(print1632[hzcode]+40));
Show88(lin+3,column, (uchar)(print1632[hzcode]+48));
Show88(lin+3,column+1,(uchar)(print1632[hzcode]+56));
}
/*显示19264图片,PCtoLCD2002:取模走向:逆向(低位在前),取模方式:列行式。——————————————————————*/
void DisplayBmp(uchar *pin)
{
uchar i,j,k;
for (i=0;i<8;i++)
{
for (j=0;j<3;j++)
{
SelectScreen(j);
SetLine(i);
SetColumn(0);
for (k=0;k<64;k++)
Write_data(pin[(i*3+j)*64+k]);
}
}
}
显示16x32字符还有没更好的写法? |
|