|
|
这个是我从tb上买的一块2.4寸 tft arduino模块,显示英文,画个圆什么的都有现成函数,直接调用即可,就是到现在我还没弄明白如何才能显示中文。查了许多许多的资料,取模软件也都有,但依然无法将这块知识联系起来,弄了3个晚上了,实在有些乱,在此求大神指点吧。
一、使用的是ILI9341_V2.0的库
假如取模出来的数组设为const unsigned char hanzi[????]{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},
请问 hanzi[????]数组内部定义多少根据什么来算呢
二、卖家提供的资料中说下面代码是匹配的16*16的显示函数
void Fast_DrawFont_GBK16(uint x, uint y, uint fc, uint bc, uchar *s)
{
unsigned char i,j;
unsigned short k;
uint HZnum;
HZnum=sizeof(hz16)/sizeof(typFNT_GBK16);
while(*s)
{
if((*s) >= 128)
{
for (k=0;k<HZnum;k++)
{
if ((hz16[k].Index[0]==*(s))&&(hz16[k].Index[1]==*(s+1)))
{ Lcd_SetRegion(x,y,x+16-1,y+16-1);
for(i=0;i<16*2;i++)
{
for(j=0;j<8;j++)
{
if(hz16[k].Msk[i]&(0x80>>j)) LCD_WriteData_16Bit(fc);
else
{
if (fc!=bc) LCD_WriteData_16Bit(bc);
}
}
}
}
}
s+=2;x+=16;
}
}
}
else
s+=1;
}
}
问题1、这个代码理解起来有难度,大神可以简单帮我说几句理清一下思路吗,个人认为这个是扫描汉字(擦,你这说的不是废话吗!@?)
问题2、这个代码如何与数组联系起来,直接调用Fast_DrawFont_GBK16函数就可以直接显示出一个汉字(高手勿喷,就不会这里的转化,有数组,有函数,怎么联系?)
问题3、麻烦给一个只显示一个汉字的demo,我好照葫芦画瓢
问得有点多,先谢谢大家咯,问题三可以不回答,再次感谢
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|