前言
这篇文章记录了如何用stm32f103开发板控制TFTLCD显示屏显示中文。
一、中文字库的建立
1.配置取模软件
这里用的取模软件是PCtoLCD2002完美版。 点击字模生成液晶面板选项,完成如图配置。
根据自己的需求配置字体的种类、大小,这里以16字号宋体为例。
2.汉字取模
取模软件配置完毕后,输入所要取模的汉字,点击生成字模,并复制所生成的点阵集,如图所示。
二、配置工程源码
1.导入字库
打开正点原子标准例程——TFTLCD显示实验 将所复制的点阵集按如下格式整理导入到font.h文件中 导入完毕。
2.中文显示函数
将以下代码添加到lcd.c文件中
void Chinese_Show_one(u8 x, u8 y, u8 num, u8 size,u8 mode)
{
u8 temp,t,t1;
u8 y0=y;
u8 csize=(size/8 + ((size%8)?1:0)) * size;
for(t=0;t<csize;t++)
{
if(size==16) temp = chinese_one_1616[num][t];
else return;
for(t1=0;t1<8;t1++)
{
if(temp&0x80) LCD_Fast_DrawPoint(x,y,POINT_COLOR);
else LCD_Fast_DrawPoint(x,y,BACK_COLOR);
temp<<=1;
y++;
if((y-y0)==size)
{
y=y0;
x++;
break;
}
}
}
}
3.在主函数中调用
int main(void)
{
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
uart_init(115200);
LCD_Init();
POINT_COLOR=RED;
LCD_Clear(WHITE);
POINT_COLOR=RED;
Chinese_Show_one(90,140,0,16,0);
Chinese_Show_one(110,140,1,16,0);
Chinese_Show_one(130,140,2,16,0);
Chinese_Show_one(150,140,3,16,0);
while(1);
}
三、运行结果
总结
更详细、更完整的工程源码请见TFTLCD显示汉字
|