触摸屏TFT LCD 9325上显示汉字处理:
触摸屏TFT LCD 9325上显示汉字处理:
1、硬件平台:STM32开发板、TFTLCD显示模块
2、代码编辑、编译:Keil uVision5
3、取模工具:PCtoLCD2002完美版
下载地址:链接:https://pan.baidu.com/s/1cwD7wIbjacqdQB_n4YBhvA
提取码:6yqz
汉字显示代码:
//在指定位置 显示1个16*16的汉字
//(x,y):汉字显示的位置
//index:tfont数组里面的第几个汉字
//color:这个汉字的颜色
void LCD_Show_CH_Font16(u16 x,u16 y,u8 index,u16 color)
{
u8 temp,t,t1;
u16 y0=y;
for(t=0;t<32;t++)//每个16*16的汉字点阵 有32个字节
{
if(t<16)temp=asc2_1616[index*2][t]; //前16个字节
else temp=asc2_1616[index*2+1][t-16];//后16个字节
for(t1=0;t1<8;t1++)
{
if(temp&0x80)
LCD_Draw_Point(x,y,color);//画实心点
else LCD_Draw_Point(x,y,BACK_COLOR); //画空白点(使用背景色)
temp<<=1;
y++;
if((y-y0)==16)
{
y=y0;
x++;
break;
}
}
}
}
函数调用
//在LCD上的(x,y)处画点
//color:点的颜色
void LCD_Draw_Point(u16 x,u16 y,u16 color)
{
u16 temp;
temp=POINT_COLOR;
POINT_COLOR=color;
LCD_DrawPoint(x,y);
POINT_COLOR=temp;
}
再font.h中放入取模数据如下格式:
const unsigned char asc2_1616[][16]={
{0x08,0x20,0x06,0x20,0x40,0x7E,0x31,0x80,0x02,0x00,0x04,0x00,0x1F,0xFF,0xF2,0x44},
{0x12,0x44,0x92,0x44,0x7F,0xFC,0x12,0x44,0x12,0x44,0x12,0x44,0x10,0x04,0x00,0x00},/*"淮",0*/
};
显示部分
void LCD_ShowContent(void)
{
u8 i;
for(i = 0; i < (sizeof(asc2_1616)/sizeof(asc2_1616[0])/2- 1); i++)
{
LCD_Show_CH_Font16(10 + i*16,10,i,RED);
}
}