stm32f103开发板控制TFTLCD显示中文

文章目录

  • 前言
  • 一、中文字库的建立
    • 1.配置取模软件
    • 2.汉字取模
  • 二、配置工程源码
    • 1.导入字库
    • 2.中文显示函数
    • 3.在主函数中调用
  • 三、运行结果
  • 总结


前言

这篇文章记录了如何用stm32f103开发板控制TFTLCD显示屏显示中文。

一、中文字库的建立

1.配置取模软件

这里用的取模软件是PCtoLCD2002完美版。
点击字模生成液晶面板选项,完成如图配置。

根据自己的需求配置字体的种类、大小,这里以16字号宋体为例。
stm32f103开发板控制TFTLCD显示中文_第1张图片

2.汉字取模

取模软件配置完毕后,输入所要取模的汉字,点击生成字模,并复制所生成的点阵集,如图所示。
stm32f103开发板控制TFTLCD显示中文_第2张图片

二、配置工程源码

1.导入字库

打开正点原子标准例程——TFTLCD显示实验
将所复制的点阵集按如下格式整理导入到font.h文件中
stm32f103开发板控制TFTLCD显示中文_第3张图片
导入完毕。

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);			 
}

三、运行结果

stm32f103开发板控制TFTLCD显示中文_第4张图片

总结

更详细、更完整的工程源码请见TFTLCD显示汉字

你可能感兴趣的:(stm32f103单片机,stm32,c语言)