单片机学习小组
直播中

发烧友推温针

9年用户 866经验值
擅长:光电显示
私信 关注

如何用stm32f103开发板控制TFTLCD显示屏显示中文呢

如何用STM32f103开发板控制TFTLCD显示屏显示中文呢?有哪些基本流程?

回帖(1)

林明

2022-1-21 13:41:57
中文字库的建立
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     {  
        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);                         
}
举报

更多回帖

发帖
×
20
完善资料,
赚取积分