TFTLCD显示汉字的问题。求大牛详解

2019-07-20 11:00发布

如下是我改的LCD_ShowChar的函数
void LCD_ShowChar(u16 x,u16 y,u8 num,u8 size,u8 mode)
{                                                            
  u8 temp,t1,t;
        u16 y0=y;
        u8 csize=(size/8+((size%8)?1:0))*(size/2);                (不太懂这一句的啥意思  希望大牛耐心看看然后给我讲讲)
        //num=num-' ';(我自己创的数组开始没有空格 数组在下面贴着。)
        for(t=0;t<csize;t++)
        {   
                if(size==12)temp=asc2_1206[num][t];                 
                else if(size==16)temp=asc2_1608[num][t];       
                //else if(size==24)temp=asc2_2412[num][t];        (我自己在这创了一个数组 如下 所有把这行注释掉了。)
                else if(size==24)temp=ASC2_1206[num][t];
                else return;                                                               
                for(t1=0;t1<8;t1++)
                {                            
                        if(temp&0x80)LCD_Fast_DrawPoint(x,y,POINT_COLOR);
                        else if(mode==0)LCD_Fast_DrawPoint(x,y,BACK_COLOR);
                        temp<<=1;
                        y++;
                        if(y>=lcddev.height)return;               
                        if((y-y0)==size)
                        {
                                y=y0;
                                x++;
                                if(x>=lcddev.width)return;       
                                break;
                        }
                }           
        }                                            
}   

const unsigned char ASC2_1206[1][24]={
{0x08,0x40,0x48,0x40,0x48,0x90,0xFF,0xF0,0x89,0x00,0x08,0x20,0xFF,0x40,0x08,0xC0,0x09,0x20,0x4A,0x10,0x28,0x70,0x00,0x00},
};   用取模软件取的是12 12 大小的

main里面        LCD_ShowString(30,70,12,12,24,"我");
请大神帮我看看  我的程序编译没错  下载到板子上之后就乱码了。
当时玩12864的时候汉字显示也没弄好  谢谢各位了  麻烦给我详细的解释一下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。