採用8080通信模式,5個控制引腳,16根數據引腳。
此乃接口時序
一、底層時序
文件
tftlcd.c
開頭定義
#include "tftlcd.h"
#include "font.h"
#include "uart.h"
#include "stdlib.h"
//LCD的畫筆顏色和背景色
u16 FRONT_COLOR=WHITE; //畫筆顏色
u16 BACK_COLOR=BLACK; //背景色
_tftlcd_data tftlcd_data;
void Delay(unsigned int dly)
{
unsigned int i,j;
for(i=0;i<dly;i++)
for(j=0;j<255;j++);
}
寫命令:
先把CS拉低,選中芯片,把數據準備好,再把RS拉低,選中寫命令commend模式,再把RD置1,放入數據,WR置0,設置爲寫狀態,再置1,結束寫狀態
void LCD_WriteCmd(u16 cmd)
{
#ifdef TFT22_R61503B
unsigned char cmdH, cmdL;
cmdH = cmd >> 8;
cmdL = cmd & 0x00FF;
TFT_WR = 1; //初始化WR
TFT_CS = 0; //打開片+選
TFT_RD = 1; //選擇寫
TFT_RS = 0; //選擇命令
TFT_DATAPORTH = cmdH; //放置命令數據
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_DATAPORTH = cmdL;
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_CS = 1; //關閉片選
#endif
}
寫數據:
RS爲高,其餘一樣
void LCD_WriteData(u16 dat)
{
#ifdef TFT22_R61503B
unsigned char datH, datL;
datH = dat >> 8;
datL = dat & 0xFF;
TFT_WR = 1; //初始化WR
TFT_CS = 0; //打開片選
TFT_RD = 1; //選擇寫
TFT_RS = 1; //選擇發送數據
TFT_DATAPORTH = datH; //放置命令數據
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_DATAPORTH = datL;
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_CS = 1; //關閉片選
#endif
}
寫顏色
void LCD_WriteData_Color(u16 color)
{
#ifdef TFT22_R61503B
unsigned char datH, datL;
datH = color >> 8;
datL = color & 0xFF;
TFT_WR = 1; //初始化WR
TFT_CS = 0; //打開片選
TFT_RD = 1; //選擇寫
TFT_RS = 1; //選擇發送數據
TFT_DATAPORTH = datH; //放置命令數據
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_DATAPORTH = datL;
TFT_WR = 0; //寫入時序
TFT_WR = 1;
TFT_CS = 1; //關閉片選
#endif
}
寫命令然後寫數據
void LCD_WriteCmdData(u16 cmd,u16 dat)
{
LCD_WriteCmd(cmd);
LCD_WriteData(dat);
}
讀數據
先把高八低八置一全部,然後RD爲一,RS爲0,讀。讀兩次,存在ram變量裏,將其返回。
u16 LCD_ReadData(void)
{
u16 ram;
TFT_DATAPORTH=0xff;
TFT_DATAPORTL=0xff;
#ifdef TFT22_R61503B
TFT_CS=0;
TFT_RS=1;
TFT_RD=0;
_nop_();
ram=TFT_DATAPORTH;
ram<<=8;
TFT_RD=1;
TFT_RD=0;
_nop_();
ram|=TFT_DATAPORTH;
TFT_RD=1;
TFT_CS=1;
#endif
return ram;
}
設置屏幕方向
默認豎屏高爲高,設置爲橫屏寬爲高
void LCD_Display_Dir(u8 dir)
{
if(dir==0) //默認豎屏方向
{
#ifdef TFT22_R61503B
LCD_WriteCmdData(0x0001,0x0500); //Output Direct
LCD_WriteCmdData(0x0003, 0x1030); //設置彩屏顯示方向的寄存器
#endif
tftlcd_data.height=HEIGHT;
tftlcd_data.width=WIDTH;
tftlcd_data.dir=0;
}
else
{
#ifdef TFT22_R61503B
LCD_WriteCmdData(0x0001, 0x0400); //Output Direct
LCD_WriteCmdData(0x0003, 0x1038); //設置彩屏顯示方向的寄存器#endif
#endif
tftlcd_data.height=WIDTH;
tftlcd_data.width=HEIGHT;
tftlcd_data.dir=1;
}
}
初始化函數
void TFTLCD_Init(void)
{
TFT_RST=1;
delay_ms(100);
TFT_RST=0;
delay_ms(100);
TFT_RST=1;
delay_ms(100);
#ifdef TFT22_R61503B
LCD_WriteCmd(0X0000);
tftlcd_data.id=LCD_ReadData();
#endif
printf(" LCD ID:%x\r\n",tftlcd_data.id); //打印LCD ID
#ifdef TFT22_R61503B
LCD_WriteCmd(0x0000);LCD_WriteData(0x0001);
delay_10us(10);
LCD_WriteCmd(0x0007);LCD_WriteCmd(0x0000);
LCD_WriteCmd(0x0012);LCD_WriteCmd(0x0000);
LCD_WriteCmd(0x00a4);LCD_WriteCmd(0x0001);
delay_10us(10);
LCD_WriteCmd(0x0070);LCD_WriteData(0x9b00);
LCD_WriteCmd(0x0007);LCD_WriteData(0x0031);
LCD_WriteCmd(0x0018);LCD_WriteData(0x0001);
LCD_WriteCmd(0x0010);LCD_WriteData(0x11b0);
LCD_WriteCmd(0x0011);LCD_WriteData(0x0007);
LCD_WriteCmd(0x0012);LCD_WriteData(0x1017);
LCD_WriteCmd(0x0013);LCD_WriteData(0x850d);
LCD_WriteCmd(0x0014);LCD_WriteData(0x8000);
LCD_WriteCmd(0x0012);LCD_WriteData(0x103c);
Delay(150);
LCD_WriteCmd(0x0001);LCD_WriteData(0x0500);
LCD_WriteCmd(0x0002);LCD_WriteData(0x0700);
LCD_WriteCmd(0x0003);LCD_WriteData(0x1030);
LCD_WriteCmd(0x0008);LCD_WriteData(0x0808);
LCD_WriteCmd(0x000b);LCD_WriteData(0x1100);
LCD_WriteCmd(0x000c);LCD_WriteData(0x0000);
LCD_WriteCmd(0x000f);LCD_WriteData(0x1401);
LCD_WriteCmd(0x0015);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0020);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0021);LCD_WriteData(0x0000);
// LCD_WriteCmd(0x0030);LCD_WriteData(0x0f0f);
// LCD_WriteCmd(0x0031);LCD_WriteData(0x0a0b);
// LCD_WriteCmd(0x0032);LCD_WriteData(0x0c0e);
// LCD_WriteCmd(0x0033);LCD_WriteData(0x0d0d);
// LCD_WriteCmd(0x0034);LCD_WriteData(0x0a0a);
// LCD_WriteCmd(0x0035);LCD_WriteData(0x0909);
// LCD_WriteCmd(0x0036);LCD_WriteData(0x0c0c);
// LCD_WriteCmd(0x0037);LCD_WriteData(0x0f0c);
// LCD_WriteCmd(0x0038);LCD_WriteData(0x0606);
// LCD_WriteCmd(0x0039);LCD_WriteData(0x0606);
LCD_WriteCmd(0x0050);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0051);LCD_WriteData(0x00af);
LCD_WriteCmd(0x0052);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0053);LCD_WriteData(0x00db);
LCD_WriteCmd(0x0070);LCD_WriteData(0x1b00);
LCD_WriteCmd(0x0071);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0090);LCD_WriteData(0x0000);
LCD_WriteCmd(0x0091);LCD_WriteData(0x0100);
LCD_WriteCmd(0x0092);LCD_WriteData(0x0001);
LCD_WriteCmd(0x0059);LCD_WriteData(0x050c);
LCD_WriteCmd(0x0090);LCD_WriteData(0x0010);
LCD_WriteCmd(0x0092);LCD_WriteData(0x0600);
LCD_WriteCmd(0x0007);LCD_WriteData(0x0233);
Delay(50);
// LCD_WriteCmd(0x0007);LCD_WriteData(0x0133);
// Delay(50);
LCD_WriteCmd(0x0022);
#endif
LCD_Display_Dir(TFTLCD_DIR); //0:豎屏 1:橫屏 默認豎屏
LCD_Clear(BACK_COLOR);
}
設置窗口
//設置窗口,並自動設置畫點座標到窗口左上角(sx,sy).
//sx,sy:窗口起始座標(左上角)
//width,height:窗口寬度和高度,必須大於0!!
//窗體大小:width*height.
void LCD_Set_Window(u16 sx,u16 sy,u16 width,u16 height)
{
#ifdef TFT22_R61503B
if(tftlcd_data.dir==0)
{
LCD_WriteCmd(0x0050);
LCD_WriteData(sx);
LCD_WriteCmd(0x0051);
LCD_WriteData(width);
LCD_WriteCmd(0x0052);
LCD_WriteData(sy);
LCD_WriteCmd(0x0053);
LCD_WriteData(height);
LCD_WriteCmd(0x0020);
LCD_WriteData(sx);
LCD_WriteCmd(0x0021);
LCD_WriteData(sy);
LCD_WriteCmd(0x0022);
}
else
{
LCD_WriteCmd(0x0052);
LCD_WriteData(sx);
LCD_WriteCmd(0x0053);
LCD_WriteData(width);
LCD_WriteCmd(0x0050);
LCD_WriteData(sy);
LCD_WriteCmd(0x0051);
LCD_WriteData(height);
LCD_WriteCmd(0x0021);
LCD_WriteData(sx);
LCD_WriteCmd(0x0020);
LCD_WriteData(sy);
LCD_WriteCmd(0x0022);
}
#endif
}
讀取個某點的顏色值
//讀取個某點的顏色值
//x,y:座標
//返回值:此點的顏色
u16 LCD_ReadPoint(u16 x,u16 y)
{
u16 r=0,g=0x0001,b=0x0001,dat;
if(x>=tftlcd_data.width||y>=tftlcd_data.height)
return 0; //超過了範圍,直接返回
LCD_Set_Window(x, y, x, y);
#ifdef TFT22_R61503B
//LCD_Set_Window(x, y, x, y);
dat=LCD_ReadData(); //dummy Read
dat=LCD_ReadData();
//假設dat等於1101 0011 1100 1101
b=dat>>11;
//b=0000 0000 0001 1010
g=(dat>>5)&0x003f;
//g= 0000 0110 1001 1110 & 0000 0000 0011 1111=
//0000 0000 0001 1110
r=dat&0x001f;
//r=1101 0011 1100 1101 & 0000 0000 0001 1111=
//0000 0000 0000 1101
dat=(r<<11)|(g<<5)|(b);
//dat=0110 1000 0000 0000 | 0000 0011 1100 0000 | 0000 0000 0001 1010
//dat=0110 1011 1101 1010
//此處應該是將bgr變爲rgb,將r提前
r=dat;
#endif
return r;
}
應用層
清屏函數
//清屏函數
//color:要清屏的填充色
void LCD_Clear(u16 color)
{
u16 i=0, j=0 ;
LCD_Set_Window(0, 0, tftlcd_data.width-1, tftlcd_data.height-1); //作用區域
for(i=0; i<tftlcd_data.width; i++)
{
for (j=0; j<tftlcd_data.height; j++)
{
LCD_WriteData_Color(color);
}
}
}
在指定區域內填充單個顏色
//在指定區域內填充單個顏色
//(sx,sy),(ex,ey):填充矩形對角座標,區域大小爲:(ex-sx+1)*(ey-sy+1)
//color:要填充的顏色
void LCD_Fill(u16 xState,u16 yState,u16 xEnd,u16 yEnd,u16 color)
{
u16 temp=0;
if((xState > xEnd) || (yState > yEnd))
{
return;
}
LCD_Set_Window(xState, yState, xEnd, yEnd);
xState = xEnd - xState + 1;
yState = yEnd - yState + 1;
while(xState--)
{
temp = yState;
while (temp--)
{
LCD_WriteData_Color(color);
}
}
}
在指定區域內填充指定顏色塊
//在指定區域內填充指定顏色塊
//(sx,sy),(ex,ey):填充矩形對角座標,區域大小爲:(ex-sx+1)*(ey-sy+1)
//color:要填充的顏色
void LCD_Color_Fill(u16 sx,u16 sy,u16 ex,u16 ey,u16 *color)
{
u16 height,width;
u16 i,j;
width=ex-sx+1; //得到填充的寬度
height=ey-sy+1; //高度
LCD_Set_Window(sx, sy,ex, ey);
for(i=0;i<height;i++)
{
for(j=0;j<width;j++)
{
LCD_WriteData_Color(color[i*width+j]);
//i等於0,引用的是第一行的,i等於1,引用第二行
}
}
}
畫點
//x,y:座標
//FRONT_COLOR:此點的顏色
void LCD_DrawPoint(u16 x,u16 y)
{
LCD_Set_Window(x, y, x, y); //設置點的位置
LCD_WriteData_Color(FRONT_COLOR);
}
快速畫點
//快速畫點
//x,y:座標
//color:顏色
void LCD_DrawFRONT_COLOR(u16 x,u16 y,u16 color)
{
LCD_Set_Window(x, y, x, y);
LCD_WriteData_Color(color);
}
畫一個大點
//畫一個大點
//2*2的點
void LCD_DrawBigPoint(u16 x,u16 y,u16 color)
{
LCD_DrawFRONT_COLOR(x,y,color);//中心點
LCD_DrawFRONT_COLOR(x+1,y,color);
LCD_DrawFRONT_COLOR(x,y+1,color);
LCD_DrawFRONT_COLOR(x+1,y+1,color);
}
畫線
//畫線
//x1,y1:起點座標
//x2,y2:終點座標
void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2)
{
u16 t=0;
int xerr=0,yerr=0,delta_x,delta_y,distance;
int incx,incy,uRow,uCol;
delta_x=x2-x1; //計算座標增量
delta_y=y2-y1; //少加的那個1再後邊的for循環里加進去了
uRow=x1; //x軸
uCol=y1; //y軸
if(delta_x>0)incx=1; //設置單步方向,從左往右
else if(delta_x==0)incx=0;//垂直線
else {incx=-1;delta_x=-delta_x;} //從右往左
if(delta_y>0)incy=1; //從上到下
else if(delta_y==0)incy=0;//水平線
else{incy=-1;delta_y=-delta_y;} //從下到上
if( delta_x>delta_y)distance=delta_x; //選取基本增量座標軸 朝着x方向增長
else distance=delta_y;
for(t=0;t<=distance+1;t++ )//畫線輸出
{
//假設傳進來的參數爲void LCD_DrawLine(10, 10, 20,30)長方形
//所以delta_x=10,delta_y=20,distance=20,incx=1,incy=1
LCD_DrawPoint(uRow,uCol);//畫點
//void LCD_DrawLine_Color(u16 x1, u16 y1, u16 x2, u16 y2,u16 color)
//{
//。。。。
// LCD_DrawFRONT_COLOR(uRow,uCol,color);//畫點
//。。。。
//}
//畫彩色的線的時候,其餘的一樣,把畫點的改成這個就行,其實就是把每個點設置了個顏色
xerr+=delta_x ;
yerr+=delta_y ;
if(xerr>distance)
{
xerr-=distance;
uRow+=incx;
}
if(yerr>distance)
{
yerr-=distance;
uCol+=incy;
}
}
}
這就是畫直線的原理,非常巧妙的算法。給x和y每次加各自的長度,大於最長distance時就清零。
但是注意,他這個代碼在第一個點處畫了兩回,因爲是這樣的,第一次開始,先畫點,(10,10)處。加的時候x是10,y是20,然後開始第二次for循環,先畫點,還是在(10,10)處又畫了一次。
是這樣的一個順序執行。如果yend設置的過大,則會自動換行,就是在一個屏幕上出現好幾條平行線。
畫一個十字的標記
// 畫一個十字的標記
// x:標記的X座標
// y:標記的Y座標
// color:標記的顏色
void LCD_DrowSign(u16 x, u16 y, u16 color)
{
u8 i;
/* 畫點 */
LCD_Set_Window(x-1, y-1, x+1, y+1);
for(i=0; i<9; i++)
{
LCD_WriteData_Color(color);
}
//中心點如果畫的太大就是一個方塊,因爲他把兩邊擋住了。
/* 畫橫 */
LCD_Set_Window(x-4, y, x+4, y);
for(i=0; i<9; i++)
{
LCD_WriteData_Color(color);
}
/* 畫豎 */
LCD_Set_Window(x, y-4, x, y+4);
for(i=0; i<9; i++)
{
LCD_WriteData_Color(color);
}
}
畫矩形
//(x1,y1),(x2,y2):矩形的對角座標
void LCD_DrawRectangle(u16 x1, u16 y1, u16 x2, u16 y2)
{
LCD_DrawLine(x1,y1,x2,y1);
LCD_DrawLine(x1,y1,x1,y2);
LCD_DrawLine(x1,y2,x2,y2);
LCD_DrawLine(x2,y1,x2,y2);
}
畫園
{
int a,b;
int di;
a=0;b=r;
di=3-(r<<1); //判斷下個點位置的標誌
while(a<=b)
{
LCD_DrawPoint(x0+a,y0-b); //5
LCD_DrawPoint(x0+b,y0-a); //0
LCD_DrawPoint(x0+b,y0+a); //4
LCD_DrawPoint(x0+a,y0+b); //6
LCD_DrawPoint(x0-a,y0+b); //1
LCD_DrawPoint(x0-b,y0+a);
LCD_DrawPoint(x0-a,y0-b); //2
LCD_DrawPoint(x0-b,y0-a); //7
a++;
//使用Bresenham算法畫圓
if(di<0)di +=4*a+6;
else
{
di+=10+4*(a-b);
b--;
}
}
}
在指定位置顯示一個字符
//在指定位置顯示一個字符
//x,y:起始座標
//num:要顯示的字符:" "--->"~"
//size:字體大小 12/16/24
//mode:疊加方式(1)還是非疊加方式(0)
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); //得到字體一個字符對應點陣集所佔的字節數
//(12/8+12%8)*12/2=(1+1)*6=12
//12*12/8=18,16*16/8=32所以應該不是方塊字,是長方形的字
//16/8*16/2=2*8=16
num=num-' ';//得到偏移後的值(ASCII字庫是從空格開始取模,所以-' '就是對應字符的字庫)
for(t=0;t<csize;t++)
{
if(size==12)temp=ascii_1206[num][t]; //調用1206字體
else if(size==16)temp=ascii_1608[num][t]; //調用1608字體
else if(size==24)temp=ascii_2412[num][t]; //調用2412字體
else return; //沒有的字庫
for(t1=0;t1<8;t1++)
{ //一個位一個位發
if(temp&0x80)LCD_DrawFRONT_COLOR(x,y,FRONT_COLOR);
else if(mode==0)LCD_DrawFRONT_COLOR(x,y,BACK_COLOR);
temp<<=1;
y++;
if(y>=tftlcd_data.height)return; //超區域了
if((y-y0)==size)
{
y=y0;//從上到下八個一頁,然後第二列。
x++;
if(x>=tftlcd_data.width)return; //超區域了
break;
}
}
}
}
出現溢出警告,右鍵target設置成這樣即可。否則編譯不通過
m^n函數
//m^n函數
//返回值:m^n次方.
u32 LCD_Pow(u8 m,u8 n)
{
u32 result=1;
while(n--)result*=m;
return result;
}
顯示數字
//顯示數字,高位爲0,則不顯示
//x,y :起點座標
//len :數字的位數
//size:字體大小
//color:顏色
//num:數值(0~4294967295);
void LCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size)
{
u8 t,temp;
u8 enshow=0;
for(t=0;t<len;t++)
{
//輸入num=250,x=50,y=50,len=3,size=12;
temp=(num/LCD_Pow(10,len-t-1))%10;
//temp=250/10^2%10=2
if(enshow==0&&t<(len-1))//0和1兩次
//第一次的時候執行這個,如果是0就不顯示,然後看第二位,如
//果第二位還是0就還不顯示,一直到不爲0,就把enshow變爲1,告訴程序
//開始正常顯示,高位0檢測完畢
{
//1 temp=2,enshow=1,showchar(x,y,'2',12,0)
//2 temp=5,enshow=1,showchar(x+6,y,'5',12,0)
//3 temp=0, enshow=1,showchar(x+6,y,'0',12,0)
if(temp==0)
{
LCD_ShowChar(x+(size/2)*t,y,' ',size,0);
continue;
}else enshow=1;
}
LCD_ShowChar(x+(size/2)*t,y,temp+'0',size,0);
}
}
顯示字符串
//顯示字符串
//x,y:起點座標
//width,height:區域大小
//size:字體大小
//*p:字符串起始地址
void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p)
{
u8 x0=x;
width+=x;
height+=y;
while((*p<='~')&&(*p>=' '))//判斷是不是非法字符!
{
if(x>=width){x=x0;y+=size;}
if(y>=height)break;//退出
LCD_ShowChar(x,y,*p,size,0);
x+=size/2;
p++;
}
}
寫二號楷體漢字
/****************************************************************************
*函數名:LCD_ShowFontHZ
*輸 入:x:漢字顯示的X座標
* * y:漢字顯示的Y座標
* * cn:要顯示的漢字
* * wordColor:文字的顏色
* * backColor:背景顏色
*輸 出:
*功 能:寫二號楷體漢字
****************************************************************************/
#if 1
void LCD_ShowFontHZ(u16 x, u16 y, u8 *cn)
{
u8 i, j, wordNum;
u16 color;
while (*cn != '\0')
{
LCD_Set_Window(x, y, x+31, y+28);
for (wordNum=0; wordNum<20; wordNum++)
{ //wordNum掃描字庫的字數
if ((CnChar32x29[wordNum].Index[0]==*cn)
&&(CnChar32x29[wordNum].Index[1]==*(cn+1)))
{
for(i=0; i<116; i++)
{ //MSK的位數
color=CnChar32x29[wordNum].Msk[i];
for(j=0;j<8;j++)
{
if((color&0x80)==0x80)
{
LCD_WriteData_Color(FRONT_COLOR);
}
else
{
LCD_WriteData_Color(BACK_COLOR);
}
color<<=1;
}//for(j=0;j<8;j++)結束
}
}
} //for (wordNum=0; wordNum<20; wordNum++)結束
cn += 2;
x += 32;
}
}
#endif
#if 0
void LCD_ShowFontHZ(u16 x, u16 y, u8 *cn)
{
u8 i, j, wordNum;
u16 color;
u16 x0=x;
u16 y0=y;
while (*cn != '\0')
{
for (wordNum=0; wordNum<20; wordNum++)
{ //wordNum掃描字庫的字數
if ((CnChar32x29[wordNum].Index[0]==*cn)
&&(CnChar32x29[wordNum].Index[1]==*(cn+1)))
{
for(i=0; i<116; i++)
{ //MSK的位數
color=CnChar32x29[wordNum].Msk[i];
for(j=0;j<8;j++)
{
if((color&0x80)==0x80)
{
LCD_DrawFRONT_COLOR(x,y,FRONT_COLOR);
}
else
{
LCD_DrawFRONT_COLOR(x,y,BACK_COLOR);
}
color<<=1;
x++;
if((x-x0)==32)
{
x=x0;
y++;
if((y-y0)==29)
{
y=y0;
}
}
}//for(j=0;j<8;j++)結束
}
}
} //for (wordNum=0; wordNum<20; wordNum++)結束
cn += 2;
x += 32;
x0=x;
}
}
#endif
#if 1 ,#if 0 的作用
#if 後面的參數爲真(非0)則執行#if 後面的模塊
#if 後面的參數爲假,則不執行#if 後面的模塊
在調試的時候,有段代碼自己不想刪除,怕後面用到所以用 #if 0 來暫時註釋掉,如果想用的話就 用#if 1 來開啓;
#if 1
執行
#endif
#if 0
跳過
#endif
顯示圖片
void LCD_ShowPicture(u16 x, u16 y, u16 wide, u16 high,u8 *pic)
{
u16 temp = 0;
long tmp=0,num=0;
LCD_Set_Window(x, y, x+wide-1, y+high-1);
num = wide * high*2 ;
do
{
temp = pic[tmp + 1];
temp = temp << 8;
temp = temp | pic[tmp];
LCD_WriteData_Color(temp);//逐點顯示
tmp += 2;
}
while(tmp < num);
}
記得別太大,太大了放不下,最大64kb我的是。
main.c
#include "public.h"
#include "tftlcd.h"
void main()
{
//u16 i;
TFTLCD_Init();
LCD_Clear(BACK_COLOR);
//LCD_Fill(0,0,999,999,RED);
/*i=LCD_ReadPoint(10,10);
LCD_Clear(BLUE);
LCD_Clear(i);*/
// LCD_DrawLine(10,10,20,30);
//LCD_DrawLine_Color(0,0,200,1000,BLUE);
//LCD_DrowSign(100,100,RED);
//LCD_DrawRectangle(50, 50, 100,100);
//LCD_Draw_Circle(20,20,50);
//LCD_ShowChar(50,50,'a',12,0);
//LCD_ShowNum(50,50,123456,4,12);
//LCD_ShowString(50,50,50,50,12,"abcdefgasasasasasasasasasas");
//LCD_ShowFontHZ(50, 50, "普") ;
LCD_ShowPicture(50,50,70,100);
while(1)
{
}
}
tftlcd.h
#ifndef _tftlcd_H
#define _tftlcd_H
#include "public.h"
#define TFT22_R61503B
#define TFTLCD_DIR 0 //0:豎屏 1:橫屏 默認豎屏
//分辨率
#ifdef TFT22_R61503B
#define WIDTH 176
#define HEIGHT 220
#endif
//TFTLCD彩屏數據控制端口定義
#define TFT_DATAPORTH P1
#define TFT_DATAPORTL P0
sbit TFT_CS = P2^7;
sbit TFT_RST = P3^3;
sbit TFT_RS = P2^6;
sbit TFT_WR = P2^5;
sbit TFT_RD = P3^2;
typedef struct
{
u16 width; //LCD 寬度
u16 height; //LCD 高度
u16 id; //LCD ID
u8 dir; //LCD 方向
}_tftlcd_data;
//LCD參數
extern _tftlcd_data tftlcd_data; //管理LCD重要參數
//LCD的前端顏色和背景色
extern u16 FRONT_COLOR;//前端顏色 默認紅色
extern u16 BACK_COLOR; //背景顏色.默認爲白色
//畫筆顏色
#define WHITE 0xFFFF
#define BLACK 0x0000
#define BLUE 0x001F
#define BRED 0XF81F
#define GRED 0XFFE0
#define GBLUE 0X07FF
#define RED 0xF800
#define MAGENTA 0xF81F
#define GREEN 0x07E0
#define CYAN 0x7FFF
#define YELLOW 0xFFE0
#define BROWN 0XBC40 //棕色
#define BRRED 0XFC07 //棕紅色
#define GRAY 0X8430 //灰色
void LCD_WriteCmd(u16 cmd);
void LCD_WriteData(u16 dat);
void LCD_WriteCmdData(u16 cmd,u16 dat);
void LCD_WriteData_Color(u16 color);
u16 LCD_ReadPoint(u16 x,u16 y);
void TFTLCD_Init(void); //初始化
void LCD_Set_Window(u16 sx,u16 sy,u16 width,u16 height);
void LCD_Clear(u16 Color); //清屏
void LCD_Fill(u16 xState,u16 yState,u16 xEnd,u16 yEnd,u16 color);
void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2);
void LCD_DrawLine_Color(u16 x1, u16 y1, u16 x2, u16 y2,u16 color);
void LCD_DrawFRONT_COLOR(u16 x,u16 y,u16 color);
void LCD_DrowSign(u16 x, u16 y, u16 color);
void LCD_DrawRectangle(u16 x1, u16 y1, u16 x2, u16 y2);
void LCD_Draw_Circle(u16 x0,u16 y0,u8 r);
void LCD_ShowChar(u16 x,u16 y,u8 num,u8 size,u8 mode);
u32 LCD_Pow(u8 m,u8 n);
void LCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size);
void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p);
void LCD_ShowFontHZ(u16 x, u16 y, u8 *cn) ;
void LCD_ShowPicture(u16 x, u16 y, u16 wide, u16 high);
#endif
public.h
#ifndef _public_H
#define _public_H
#include "reg52.h"
#include "intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;
typedef unsigned long u32;
typedef enum
{
DISABLE = 0, ENABLE = !DISABLE
}FunctionalState;
void delay_10us(u16 us);
void delay_ms(u16 ms);
#endif
public.c
#include "public.h"
void delay_10us(u16 us)
{
while(us--);
}
void delay_ms(u16 ms)
{
u16 i,j;
for(i=ms;i>0;i--)
for(j=110;j>0;j--);
}
font.h
#ifndef __FONT_H
#define __FONT_H
//常用ASCII表
//偏移量32
//ASCII字符集: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
//PC2LCD2002取模方式設置:陰碼+逐列式+順向+C51格式
//總共:3個字符集(12*12、16*16和24*24),用戶可以自行新增其他分辨率的字符集。
//每個字符所佔用的字節數爲:(size/8+((size%8)?1:0))*(size/2),其中size:是字庫生成時的點陣大小(12/16/24...)
//12*12 ASCII字符集點陣
code const unsigned char ascii_1206[95][12]={
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/
{0x00,0x00,0x00,0x00,0x3F,0x40,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/
{0x00,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x40,0x00,0x00,0x00},/*""",2*/
{0x09,0x00,0x0B,0xC0,0x3D,0x00,0x0B,0xC0,0x3D,0x00,0x09,0x00},/*"#",3*/
{0x18,0xC0,0x24,0x40,0x7F,0xE0,0x22,0x40,0x31,0x80,0x00,0x00},/*"$",4*/
{0x18,0x00,0x24,0xC0,0x1B,0x00,0x0D,0x80,0x32,0x40,0x01,0x80},/*"%",5*/
{0x03,0x80,0x1C,0x40,0x27,0x40,0x1C,0x80,0x07,0x40,0x00,0x40},/*"&",6*/
{0x10,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x20,0x40,0x40,0x20},/*"(",8*/
{0x00,0x00,0x40,0x20,0x20,0x40,0x1F,0x80,0x00,0x00,0x00,0x00},/*")",9*/
{0x09,0x00,0x06,0x00,0x1F,0x80,0x06,0x00,0x09,0x00,0x00,0x00},/*"*",10*/
{0x04,0x00,0x04,0x00,0x3F,0x80,0x04,0x00,0x04,0x00,0x00,0x00},/*"+",11*/
{0x00,0x10,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/
{0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00},/*"-",13*/
{0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/
{0x00,0x20,0x01,0xC0,0x06,0x00,0x38,0x00,0x40,0x00,0x00,0x00},/*"/",15*/
{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"0",16*/
{0x00,0x00,0x10,0x40,0x3F,0xC0,0x00,0x40,0x00,0x00,0x00,0x00},/*"1",17*/
{0x18,0xC0,0x21,0x40,0x22,0x40,0x24,0x40,0x18,0x40,0x00,0x00},/*"2",18*/
{0x10,0x80,0x20,0x40,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"3",19*/
{0x02,0x00,0x0D,0x00,0x11,0x00,0x3F,0xC0,0x01,0x40,0x00,0x00},/*"4",20*/
{0x3C,0x80,0x24,0x40,0x24,0x40,0x24,0x40,0x23,0x80,0x00,0x00},/*"5",21*/
{0x1F,0x80,0x24,0x40,0x24,0x40,0x34,0x40,0x03,0x80,0x00,0x00},/*"6",22*/
{0x30,0x00,0x20,0x00,0x27,0xC0,0x38,0x00,0x20,0x00,0x00,0x00},/*"7",23*/
{0x1B,0x80,0x24,0x40,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"8",24*/
{0x1C,0x00,0x22,0xC0,0x22,0x40,0x22,0x40,0x1F,0x80,0x00,0x00},/*"9",25*/
{0x00,0x00,0x00,0x00,0x08,0x40,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/
{0x00,0x00,0x00,0x00,0x04,0x60,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/
{0x00,0x00,0x04,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0x40,0x40},/*"<",28*/
{0x09,0x00,0x09,0x00,0x09,0x00,0x09,0x00,0x09,0x00,0x00,0x00},/*"=",29*/
{0x00,0x00,0x40,0x40,0x20,0x80,0x11,0x00,0x0A,0x00,0x04,0x00},/*">",30*/
{0x18,0x00,0x20,0x00,0x23,0x40,0x24,0x00,0x18,0x00,0x00,0x00},/*"?",31*/
{0x1F,0x80,0x20,0x40,0x27,0x40,0x29,0x40,0x1F,0x40,0x00,0x00},/*"@",32*/
{0x00,0x40,0x07,0xC0,0x39,0x00,0x0F,0x00,0x01,0xC0,0x00,0x40},/*"A",33*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"B",34*/
{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x30,0x80,0x00,0x00},/*"C",35*/
{0x20,0x40,0x3F,0xC0,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"D",36*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x2E,0x40,0x30,0xC0,0x00,0x00},/*"E",37*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x2E,0x00,0x30,0x00,0x00,0x00},/*"F",38*/
{0x0F,0x00,0x10,0x80,0x20,0x40,0x22,0x40,0x33,0x80,0x02,0x00},/*"G",39*/
{0x20,0x40,0x3F,0xC0,0x04,0x00,0x04,0x00,0x3F,0xC0,0x20,0x40},/*"H",40*/
{0x20,0x40,0x20,0x40,0x3F,0xC0,0x20,0x40,0x20,0x40,0x00,0x00},/*"I",41*/
{0x00,0x60,0x20,0x20,0x20,0x20,0x3F,0xC0,0x20,0x00,0x20,0x00},/*"J",42*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x0B,0x00,0x30,0xC0,0x20,0x40},/*"K",43*/
{0x20,0x40,0x3F,0xC0,0x20,0x40,0x00,0x40,0x00,0x40,0x00,0xC0},/*"L",44*/
{0x3F,0xC0,0x3C,0x00,0x03,0xC0,0x3C,0x00,0x3F,0xC0,0x00,0x00},/*"M",45*/
{0x20,0x40,0x3F,0xC0,0x0C,0x40,0x23,0x00,0x3F,0xC0,0x20,0x00},/*"N",46*/
{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"O",47*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x24,0x00,0x18,0x00,0x00,0x00},/*"P",48*/
{0x1F,0x80,0x21,0x40,0x21,0x40,0x20,0xE0,0x1F,0xA0,0x00,0x00},/*"Q",49*/
{0x20,0x40,0x3F,0xC0,0x24,0x40,0x26,0x00,0x19,0xC0,0x00,0x40},/*"R",50*/
{0x18,0xC0,0x24,0x40,0x24,0x40,0x22,0x40,0x31,0x80,0x00,0x00},/*"S",51*/
{0x30,0x00,0x20,0x40,0x3F,0xC0,0x20,0x40,0x30,0x00,0x00,0x00},/*"T",52*/
{0x20,0x00,0x3F,0x80,0x00,0x40,0x00,0x40,0x3F,0x80,0x20,0x00},/*"U",53*/
{0x20,0x00,0x3E,0x00,0x01,0xC0,0x07,0x00,0x38,0x00,0x20,0x00},/*"V",54*/
{0x38,0x00,0x07,0xC0,0x3C,0x00,0x07,0xC0,0x38,0x00,0x00,0x00},/*"W",55*/
{0x20,0x40,0x39,0xC0,0x06,0x00,0x39,0xC0,0x20,0x40,0x00,0x00},/*"X",56*/
{0x20,0x00,0x38,0x40,0x07,0xC0,0x38,0x40,0x20,0x00,0x00,0x00},/*"Y",57*/
{0x30,0x40,0x21,0xC0,0x26,0x40,0x38,0x40,0x20,0xC0,0x00,0x00},/*"Z",58*/
{0x00,0x00,0x00,0x00,0x7F,0xE0,0x40,0x20,0x40,0x20,0x00,0x00},/*"[",59*/
{0x00,0x00,0x70,0x00,0x0C,0x00,0x03,0x80,0x00,0x40,0x00,0x00},/*"\",60*/
{0x00,0x00,0x40,0x20,0x40,0x20,0x7F,0xE0,0x00,0x00,0x00,0x00},/*"]",61*/
{0x00,0x00,0x20,0x00,0x40,0x00,0x20,0x00,0x00,0x00,0x00,0x00},/*"^",62*/
{0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10},/*"_",63*/
{0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/
{0x00,0x00,0x02,0x80,0x05,0x40,0x05,0x40,0x03,0xC0,0x00,0x40},/*"a",65*/
{0x20,0x00,0x3F,0xC0,0x04,0x40,0x04,0x40,0x03,0x80,0x00,0x00},/*"b",66*/
{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x40,0x06,0x40,0x00,0x00},/*"c",67*/
{0x00,0x00,0x03,0x80,0x04,0x40,0x24,0x40,0x3F,0xC0,0x00,0x40},/*"d",68*/
{0x00,0x00,0x03,0x80,0x05,0x40,0x05,0x40,0x03,0x40,0x00,0x00},/*"e",69*/
{0x00,0x00,0x04,0x40,0x1F,0xC0,0x24,0x40,0x24,0x40,0x20,0x00},/*"f",70*/
{0x00,0x00,0x02,0xE0,0x05,0x50,0x05,0x50,0x06,0x50,0x04,0x20},/*"g",71*/
{0x20,0x40,0x3F,0xC0,0x04,0x40,0x04,0x00,0x03,0xC0,0x00,0x40},/*"h",72*/
{0x00,0x00,0x04,0x40,0x27,0xC0,0x00,0x40,0x00,0x00,0x00,0x00},/*"i",73*/
{0x00,0x10,0x00,0x10,0x04,0x10,0x27,0xE0,0x00,0x00,0x00,0x00},/*"j",74*/
{0x20,0x40,0x3F,0xC0,0x01,0x40,0x07,0x00,0x04,0xC0,0x04,0x40},/*"k",75*/
{0x20,0x40,0x20,0x40,0x3F,0xC0,0x00,0x40,0x00,0x40,0x00,0x00},/*"l",76*/
{0x07,0xC0,0x04,0x00,0x07,0xC0,0x04,0x00,0x03,0xC0,0x00,0x00},/*"m",77*/
{0x04,0x40,0x07,0xC0,0x04,0x40,0x04,0x00,0x03,0xC0,0x00,0x40},/*"n",78*/
{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x40,0x03,0x80,0x00,0x00},/*"o",79*/
{0x04,0x10,0x07,0xF0,0x04,0x50,0x04,0x40,0x03,0x80,0x00,0x00},/*"p",80*/
{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x50,0x07,0xF0,0x00,0x10},/*"q",81*/
{0x04,0x40,0x07,0xC0,0x02,0x40,0x04,0x00,0x04,0x00,0x00,0x00},/*"r",82*/
{0x00,0x00,0x06,0x40,0x05,0x40,0x05,0x40,0x04,0xC0,0x00,0x00},/*"s",83*/
{0x00,0x00,0x04,0x00,0x1F,0x80,0x04,0x40,0x00,0x40,0x00,0x00},/*"t",84*/
{0x04,0x00,0x07,0x80,0x00,0x40,0x04,0x40,0x07,0xC0,0x00,0x40},/*"u",85*/
{0x04,0x00,0x07,0x00,0x04,0xC0,0x01,0x80,0x06,0x00,0x04,0x00},/*"v",86*/
{0x06,0x00,0x01,0xC0,0x07,0x00,0x01,0xC0,0x06,0x00,0x00,0x00},/*"w",87*/
{0x04,0x40,0x06,0xC0,0x01,0x00,0x06,0xC0,0x04,0x40,0x00,0x00},/*"x",88*/
{0x04,0x10,0x07,0x10,0x04,0xE0,0x01,0x80,0x06,0x00,0x04,0x00},/*"y",89*/
{0x00,0x00,0x04,0x40,0x05,0xC0,0x06,0x40,0x04,0x40,0x00,0x00},/*"z",90*/
{0x00,0x00,0x00,0x00,0x04,0x00,0x7B,0xE0,0x40,0x20,0x00,0x00},/*"{",91*/
{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xF0,0x00,0x00,0x00,0x00},/*"|",92*/
{0x00,0x00,0x40,0x20,0x7B,0xE0,0x04,0x00,0x00,0x00,0x00,0x00},/*"}",93*/
{0x40,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x40,0x00},/*"~",94*/
};
//16*16 ASCII字符集點陣
code const unsigned char ascii_1608[95][16]={
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xCC,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/
{0x00,0x00,0x08,0x00,0x30,0x00,0x60,0x00,0x08,0x00,0x30,0x00,0x60,0x00,0x00,0x00},/*""",2*/
{0x02,0x20,0x03,0xFC,0x1E,0x20,0x02,0x20,0x03,0xFC,0x1E,0x20,0x02,0x20,0x00,0x00},/*"#",3*/
{0x00,0x00,0x0E,0x18,0x11,0x04,0x3F,0xFF,0x10,0x84,0x0C,0x78,0x00,0x00,0x00,0x00},/*"$",4*/
{0x0F,0x00,0x10,0x84,0x0F,0x38,0x00,0xC0,0x07,0x78,0x18,0x84,0x00,0x78,0x00,0x00},/*"%",5*/
{0x00,0x78,0x0F,0x84,0x10,0xC4,0x11,0x24,0x0E,0x98,0x00,0xE4,0x00,0x84,0x00,0x08},/*"&",6*/
{0x08,0x00,0x68,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x18,0x18,0x20,0x04,0x40,0x02,0x00,0x00},/*"(",8*/
{0x00,0x00,0x40,0x02,0x20,0x04,0x18,0x18,0x07,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/
{0x02,0x40,0x02,0x40,0x01,0x80,0x0F,0xF0,0x01,0x80,0x02,0x40,0x02,0x40,0x00,0x00},/*"*",10*/
{0x00,0x80,0x00,0x80,0x00,0x80,0x0F,0xF8,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00},/*"+",11*/
{0x00,0x01,0x00,0x0D,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/
{0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80},/*"-",13*/
{0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/
{0x00,0x00,0x00,0x06,0x00,0x18,0x00,0x60,0x01,0x80,0x06,0x00,0x18,0x00,0x20,0x00},/*"/",15*/
{0x00,0x00,0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"0",16*/
{0x00,0x00,0x08,0x04,0x08,0x04,0x1F,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"1",17*/
{0x00,0x00,0x0E,0x0C,0x10,0x14,0x10,0x24,0x10,0x44,0x11,0x84,0x0E,0x0C,0x00,0x00},/*"2",18*/
{0x00,0x00,0x0C,0x18,0x10,0x04,0x11,0x04,0x11,0x04,0x12,0x88,0x0C,0x70,0x00,0x00},/*"3",19*/
{0x00,0x00,0x00,0xE0,0x03,0x20,0x04,0x24,0x08,0x24,0x1F,0xFC,0x00,0x24,0x00,0x00},/*"4",20*/
{0x00,0x00,0x1F,0x98,0x10,0x84,0x11,0x04,0x11,0x04,0x10,0x88,0x10,0x70,0x00,0x00},/*"5",21*/
{0x00,0x00,0x07,0xF0,0x08,0x88,0x11,0x04,0x11,0x04,0x18,0x88,0x00,0x70,0x00,0x00},/*"6",22*/
{0x00,0x00,0x1C,0x00,0x10,0x00,0x10,0xFC,0x13,0x00,0x1C,0x00,0x10,0x00,0x00,0x00},/*"7",23*/
{0x00,0x00,0x0E,0x38,0x11,0x44,0x10,0x84,0x10,0x84,0x11,0x44,0x0E,0x38,0x00,0x00},/*"8",24*/
{0x00,0x00,0x07,0x00,0x08,0x8C,0x10,0x44,0x10,0x44,0x08,0x88,0x07,0xF0,0x00,0x00},/*"9",25*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x0C,0x03,0x0C,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/
{0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/
{0x00,0x00,0x00,0x80,0x01,0x40,0x02,0x20,0x04,0x10,0x08,0x08,0x10,0x04,0x00,0x00},/*"<",28*/
{0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x00,0x00},/*"=",29*/
{0x00,0x00,0x10,0x04,0x08,0x08,0x04,0x10,0x02,0x20,0x01,0x40,0x00,0x80,0x00,0x00},/*">",30*/
{0x00,0x00,0x0E,0x00,0x12,0x00,0x10,0x0C,0x10,0x6C,0x10,0x80,0x0F,0x00,0x00,0x00},/*"?",31*/
{0x03,0xE0,0x0C,0x18,0x13,0xE4,0x14,0x24,0x17,0xC4,0x08,0x28,0x07,0xD0,0x00,0x00},/*"@",32*/
{0x00,0x04,0x00,0x3C,0x03,0xC4,0x1C,0x40,0x07,0x40,0x00,0xE4,0x00,0x1C,0x00,0x04},/*"A",33*/
{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x04,0x11,0x04,0x0E,0x88,0x00,0x70,0x00,0x00},/*"B",34*/
{0x03,0xE0,0x0C,0x18,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x08,0x1C,0x10,0x00,0x00},/*"C",35*/
{0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"D",36*/
{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x04,0x17,0xC4,0x10,0x04,0x08,0x18,0x00,0x00},/*"E",37*/
{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x00,0x17,0xC0,0x10,0x00,0x08,0x00,0x00,0x00},/*"F",38*/
{0x03,0xE0,0x0C,0x18,0x10,0x04,0x10,0x04,0x10,0x44,0x1C,0x78,0x00,0x40,0x00,0x00},/*"G",39*/
{0x10,0x04,0x1F,0xFC,0x10,0x84,0x00,0x80,0x00,0x80,0x10,0x84,0x1F,0xFC,0x10,0x04},/*"H",40*/
{0x00,0x00,0x10,0x04,0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x04,0x00,0x00,0x00,0x00},/*"I",41*/
{0x00,0x03,0x00,0x01,0x10,0x01,0x10,0x01,0x1F,0xFE,0x10,0x00,0x10,0x00,0x00,0x00},/*"J",42*/
{0x10,0x04,0x1F,0xFC,0x11,0x04,0x03,0x80,0x14,0x64,0x18,0x1C,0x10,0x04,0x00,0x00},/*"K",43*/
{0x10,0x04,0x1F,0xFC,0x10,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x0C,0x00,0x00},/*"L",44*/
{0x10,0x04,0x1F,0xFC,0x1F,0x00,0x00,0xFC,0x1F,0x00,0x1F,0xFC,0x10,0x04,0x00,0x00},/*"M",45*/
{0x10,0x04,0x1F,0xFC,0x0C,0x04,0x03,0x00,0x00,0xE0,0x10,0x18,0x1F,0xFC,0x10,0x00},/*"N",46*/
{0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"O",47*/
{0x10,0x04,0x1F,0xFC,0x10,0x84,0x10,0x80,0x10,0x80,0x10,0x80,0x0F,0x00,0x00,0x00},/*"P",48*/
{0x07,0xF0,0x08,0x18,0x10,0x24,0x10,0x24,0x10,0x1C,0x08,0x0A,0x07,0xF2,0x00,0x00},/*"Q",49*/
{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x00,0x11,0xC0,0x11,0x30,0x0E,0x0C,0x00,0x04},/*"R",50*/
{0x00,0x00,0x0E,0x1C,0x11,0x04,0x10,0x84,0x10,0x84,0x10,0x44,0x1C,0x38,0x00,0x00},/*"S",51*/
{0x18,0x00,0x10,0x00,0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x00,0x18,0x00,0x00,0x00},/*"T",52*/
{0x10,0x00,0x1F,0xF8,0x10,0x04,0x00,0x04,0x00,0x04,0x10,0x04,0x1F,0xF8,0x10,0x00},/*"U",53*/
{0x10,0x00,0x1E,0x00,0x11,0xE0,0x00,0x1C,0x00,0x70,0x13,0x80,0x1C,0x00,0x10,0x00},/*"V",54*/
{0x1F,0xC0,0x10,0x3C,0x00,0xE0,0x1F,0x00,0x00,0xE0,0x10,0x3C,0x1F,0xC0,0x00,0x00},/*"W",55*/
{0x10,0x04,0x18,0x0C,0x16,0x34,0x01,0xC0,0x01,0xC0,0x16,0x34,0x18,0x0C,0x10,0x04},/*"X",56*/
{0x10,0x00,0x1C,0x00,0x13,0x04,0x00,0xFC,0x13,0x04,0x1C,0x00,0x10,0x00,0x00,0x00},/*"Y",57*/
{0x08,0x04,0x10,0x1C,0x10,0x64,0x10,0x84,0x13,0x04,0x1C,0x04,0x10,0x18,0x00,0x00},/*"Z",58*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFE,0x40,0x02,0x40,0x02,0x40,0x02,0x00,0x00},/*"[",59*/
{0x00,0x00,0x30,0x00,0x0C,0x00,0x03,0x80,0x00,0x60,0x00,0x1C,0x00,0x03,0x00,0x00},/*"\",60*/
{0x00,0x00,0x40,0x02,0x40,0x02,0x40,0x02,0x7F,0xFE,0x00,0x00,0x00,0x00,0x00,0x00},/*"]",61*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x00,0x00},/*"^",62*/
{0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01},/*"_",63*/
{0x00,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/
{0x00,0x00,0x00,0x98,0x01,0x24,0x01,0x44,0x01,0x44,0x01,0x44,0x00,0xFC,0x00,0x04},/*"a",65*/
{0x10,0x00,0x1F,0xFC,0x00,0x88,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x70,0x00,0x00},/*"b",66*/
{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x00},/*"c",67*/
{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x11,0x08,0x1F,0xFC,0x00,0x04},/*"d",68*/
{0x00,0x00,0x00,0xF8,0x01,0x44,0x01,0x44,0x01,0x44,0x01,0x44,0x00,0xC8,0x00,0x00},/*"e",69*/
{0x00,0x00,0x01,0x04,0x01,0x04,0x0F,0xFC,0x11,0x04,0x11,0x04,0x11,0x00,0x18,0x00},/*"f",70*/
{0x00,0x00,0x00,0xD6,0x01,0x29,0x01,0x29,0x01,0x29,0x01,0xC9,0x01,0x06,0x00,0x00},/*"g",71*/
{0x10,0x04,0x1F,0xFC,0x00,0x84,0x01,0x00,0x01,0x00,0x01,0x04,0x00,0xFC,0x00,0x04},/*"h",72*/
{0x00,0x00,0x01,0x04,0x19,0x04,0x19,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"i",73*/
{0x00,0x00,0x00,0x03,0x00,0x01,0x01,0x01,0x19,0x01,0x19,0xFE,0x00,0x00,0x00,0x00},/*"j",74*/
{0x10,0x04,0x1F,0xFC,0x00,0x24,0x00,0x40,0x01,0xB4,0x01,0x0C,0x01,0x04,0x00,0x00},/*"k",75*/
{0x00,0x00,0x10,0x04,0x10,0x04,0x1F,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"l",76*/
{0x01,0x04,0x01,0xFC,0x01,0x04,0x01,0x00,0x01,0xFC,0x01,0x04,0x01,0x00,0x00,0xFC},/*"m",77*/
{0x01,0x04,0x01,0xFC,0x00,0x84,0x01,0x00,0x01,0x00,0x01,0x04,0x00,0xFC,0x00,0x04},/*"n",78*/
{0x00,0x00,0x00,0xF8,0x01,0x04,0x01,0x04,0x01,0x04,0x01,0x04,0x00,0xF8,0x00,0x00},/*"o",79*/
{0x01,0x01,0x01,0xFF,0x00,0x85,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x70,0x00,0x00},/*"p",80*/
{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x01,0x05,0x01,0xFF,0x00,0x01},/*"q",81*/
{0x01,0x04,0x01,0x04,0x01,0xFC,0x00,0x84,0x01,0x04,0x01,0x00,0x01,0x80,0x00,0x00},/*"r",82*/
{0x00,0x00,0x00,0xCC,0x01,0x24,0x01,0x24,0x01,0x24,0x01,0x24,0x01,0x98,0x00,0x00},/*"s",83*/
{0x00,0x00,0x01,0x00,0x01,0x00,0x07,0xF8,0x01,0x04,0x01,0x04,0x00,0x00,0x00,0x00},/*"t",84*/
{0x01,0x00,0x01,0xF8,0x00,0x04,0x00,0x04,0x00,0x04,0x01,0x08,0x01,0xFC,0x00,0x04},/*"u",85*/
{0x01,0x00,0x01,0x80,0x01,0x70,0x00,0x0C,0x00,0x10,0x01,0x60,0x01,0x80,0x01,0x00},/*"v",86*/
{0x01,0xF0,0x01,0x0C,0x00,0x30,0x01,0xC0,0x00,0x30,0x01,0x0C,0x01,0xF0,0x01,0x00},/*"w",87*/
{0x00,0x00,0x01,0x04,0x01,0x8C,0x00,0x74,0x01,0x70,0x01,0x8C,0x01,0x04,0x00,0x00},/*"x",88*/
{0x01,0x01,0x01,0x81,0x01,0x71,0x00,0x0E,0x00,0x18,0x01,0x60,0x01,0x80,0x01,0x00},/*"y",89*/
{0x00,0x00,0x01,0x84,0x01,0x0C,0x01,0x34,0x01,0x44,0x01,0x84,0x01,0x0C,0x00,0x00},/*"z",90*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x3E,0xFC,0x40,0x02,0x40,0x02},/*"{",91*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/
{0x00,0x00,0x40,0x02,0x40,0x02,0x3E,0xFC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"}",93*/
{0x00,0x00,0x60,0x00,0x80,0x00,0x80,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x20,0x00},/*"~",94*/
};
//24*24 ASICII字符集點陣
code const unsigned char ascii_2412[95][36]={
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x38,0x0F,0xFE,0x38,0x0F,0x80,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x06,0x00,0x00,0x0C,0x00,0x00,0x38,0x00,0x00,0x31,0x00,0x00,0x06,0x00,0x00,0x0C,0x00,0x00,0x38,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00},/*""",2*/
{0x00,0x00,0x00,0x00,0x61,0x80,0x00,0x67,0xF8,0x07,0xF9,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x67,0xF8,0x07,0xF9,0x80,0x00,0x61,0x80,0x00,0x00,0x00},/*"#",3*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0xE0,0x03,0xE0,0xF0,0x06,0x30,0x08,0x04,0x18,0x08,0x1F,0xFF,0xFE,0x04,0x0E,0x08,0x07,0x87,0xF0,0x03,0x81,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*"$",4*/
{0x01,0xF0,0x00,0x06,0x0C,0x00,0x04,0x04,0x08,0x06,0x0C,0x70,0x01,0xF9,0xC0,0x00,0x0E,0x00,0x00,0x3B,0xE0,0x00,0xEC,0x18,0x07,0x08,0x08,0x04,0x0C,0x18,0x00,0x03,0xE0,0x00,0x00,0x00},/*"%",5*/
{0x00,0x01,0xE0,0x00,0x07,0xF0,0x03,0xF8,0x18,0x04,0x1C,0x08,0x04,0x17,0x08,0x07,0xE1,0xD0,0x03,0xC0,0xE0,0x00,0x23,0xB0,0x00,0x3C,0x08,0x00,0x20,0x08,0x00,0x00,0x10,0x00,0x00,0x00},/*"&",6*/
{0x00,0x00,0x00,0x01,0x00,0x00,0x31,0x00,0x00,0x32,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x01,0xFF,0xC0,0x07,0x80,0xF0,0x0C,0x00,0x18,0x10,0x00,0x04,0x20,0x00,0x02,0x00,0x00,0x00},/*"(",8*/
{0x00,0x00,0x00,0x20,0x00,0x02,0x10,0x00,0x04,0x0C,0x00,0x18,0x07,0x80,0xF0,0x01,0xFF,0xC0,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/
{0x00,0x00,0x00,0x00,0x42,0x00,0x00,0x66,0x00,0x00,0x66,0x00,0x00,0x3C,0x00,0x00,0x18,0x00,0x03,0xFF,0xC0,0x00,0x18,0x00,0x00,0x3C,0x00,0x00,0x66,0x00,0x00,0x66,0x00,0x00,0x42,0x00},/*"*",10*/
{0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x01,0xFF,0xC0,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00},/*"+",11*/
{0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x31,0x00,0x00,0x32,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/
{0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00},/*"-",13*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/
{0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1C,0x00,0x00,0x70,0x00,0x01,0x80,0x00,0x0E,0x00,0x00,0x38,0x00,0x00,0xC0,0x00,0x07,0x00,0x00,0x1C,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00},/*"/",15*/
{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x03,0x80,0x70,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"0",16*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x08,0x01,0x00,0x08,0x01,0x00,0x08,0x03,0xFF,0xF8,0x07,0xFF,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"1",17*/
{0x00,0x00,0x00,0x01,0xC0,0x38,0x02,0xC0,0x58,0x04,0x00,0x98,0x04,0x01,0x18,0x04,0x02,0x18,0x04,0x04,0x18,0x06,0x1C,0x18,0x03,0xF8,0x18,0x01,0xE0,0xF8,0x00,0x00,0x00,0x00,0x00,0x00},/*"2",18*/
{0x00,0x00,0x00,0x01,0xC0,0xE0,0x03,0xC0,0xF0,0x04,0x00,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x06,0x18,0x08,0x03,0xF4,0x18,0x01,0xE7,0xF0,0x00,0x01,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*"3",19*/
{0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x0D,0x00,0x00,0x11,0x00,0x00,0x61,0x00,0x00,0x81,0x08,0x03,0x01,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x01,0x08,0x00,0x01,0x08,0x00,0x00,0x00},/*"4",20*/
{0x00,0x00,0x00,0x00,0x00,0xE0,0x07,0xFC,0xD0,0x06,0x08,0x08,0x06,0x10,0x08,0x06,0x10,0x08,0x06,0x10,0x08,0x06,0x18,0x38,0x06,0x0F,0xF0,0x06,0x07,0xC0,0x00,0x00,0x00,0x00,0x00,0x00},/*"5",21*/
{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x84,0x30,0x02,0x08,0x18,0x04,0x10,0x08,0x04,0x10,0x08,0x04,0x10,0x08,0x07,0x18,0x10,0x03,0x0F,0xF0,0x00,0x07,0xC0,0x00,0x00,0x00},/*"6",22*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x07,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0xF8,0x06,0x07,0xF8,0x06,0x18,0x00,0x06,0xE0,0x00,0x07,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00},/*"7",23*/
{0x00,0x00,0x00,0x01,0xE1,0xE0,0x03,0xF7,0xF0,0x06,0x34,0x10,0x04,0x18,0x08,0x04,0x18,0x08,0x04,0x0C,0x08,0x04,0x0C,0x08,0x06,0x16,0x18,0x03,0xF3,0xF0,0x01,0xC1,0xE0,0x00,0x00,0x00},/*"8",24*/
{0x00,0x00,0x00,0x00,0xF8,0x00,0x03,0xFC,0x30,0x03,0x06,0x38,0x04,0x02,0x08,0x04,0x02,0x08,0x04,0x02,0x08,0x04,0x04,0x10,0x03,0x08,0xF0,0x01,0xFF,0xC0,0x00,0x7F,0x00,0x00,0x00,0x00},/*"9",25*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x38,0x00,0x70,0x38,0x00,0x70,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x1A,0x00,0x30,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x14,0x00,0x00,0x22,0x00,0x00,0x41,0x00,0x00,0x80,0x80,0x01,0x00,0x40,0x02,0x00,0x20,0x04,0x00,0x10,0x08,0x00,0x08,0x00,0x00,0x00},/*"<",28*/
{0x00,0x00,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x00,0x00},/*"=",29*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x04,0x00,0x10,0x02,0x00,0x20,0x01,0x00,0x40,0x00,0x80,0x80,0x00,0x41,0x00,0x00,0x22,0x00,0x00,0x14,0x00,0x00,0x08,0x00,0x00,0x00,0x00},/*">",30*/
{0x00,0x00,0x00,0x03,0xC0,0x00,0x04,0xC0,0x00,0x04,0x00,0x00,0x08,0x00,0x38,0x08,0x0F,0x38,0x08,0x08,0x38,0x08,0x10,0x00,0x0C,0x30,0x00,0x07,0xE0,0x00,0x03,0xC0,0x00,0x00,0x00,0x00},/*"?",31*/
{0x00,0x00,0x00,0x00,0x3F,0x80,0x00,0xFF,0xE0,0x03,0x80,0x70,0x02,0x0F,0x10,0x06,0x70,0x88,0x04,0xC0,0x88,0x04,0x83,0x08,0x04,0x7F,0x88,0x02,0xC0,0x90,0x03,0x01,0x20,0x00,0xFE,0x40},/*"@",32*/
{0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x01,0xF8,0x00,0x3E,0x08,0x01,0xC2,0x00,0x07,0x02,0x00,0x07,0xE2,0x00,0x00,0xFE,0x00,0x00,0x1F,0xC8,0x00,0x01,0xF8,0x00,0x00,0x38,0x00,0x00,0x08},/*"A",33*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x06,0x18,0x08,0x03,0xF4,0x18,0x01,0xE7,0xF0,0x00,0x01,0xE0,0x00,0x00,0x00},/*"B",34*/
{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x02,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x10,0x06,0x00,0x20,0x07,0x80,0xC0,0x00,0x00,0x00},/*"C",35*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x18,0x02,0x00,0x10,0x03,0x80,0x70,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"D",36*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x3E,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x01,0x00,0x60,0x00,0x00,0x00},/*"E",37*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x00,0x04,0x08,0x00,0x04,0x08,0x00,0x04,0x3E,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00},/*"F",38*/
{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x02,0x08,0x04,0x02,0x08,0x02,0x03,0xF0,0x07,0x83,0xF0,0x00,0x02,0x00,0x00,0x02,0x00},/*"G",39*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x04,0x08,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08},/*"H",40*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"I",41*/
{0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x07,0x00,0x00,0x01,0x04,0x00,0x01,0x04,0x00,0x01,0x04,0x00,0x03,0x07,0xFF,0xFE,0x07,0xFF,0xFC,0x04,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00},/*"J",42*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x0C,0x08,0x00,0x18,0x00,0x00,0x3E,0x00,0x04,0xC7,0x80,0x05,0x03,0xC8,0x06,0x00,0xF8,0x04,0x00,0x38,0x04,0x00,0x18,0x00,0x00,0x08},/*"K",43*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x00,0x60,0x00,0x00,0x00},/*"L",44*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0x80,0x08,0x07,0xFC,0x00,0x00,0x7F,0xC0,0x00,0x03,0xF8,0x00,0x07,0xC0,0x00,0x78,0x00,0x07,0x80,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08},/*"M",45*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0x00,0x08,0x03,0xC0,0x00,0x00,0xE0,0x00,0x00,0x38,0x00,0x00,0x1E,0x00,0x00,0x07,0x00,0x00,0x01,0xC0,0x04,0x00,0xF0,0x07,0xFF,0xF8,0x04,0x00,0x00},/*"N",46*/
{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x03,0x00,0x30,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"O",47*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x04,0x08,0x04,0x04,0x00,0x04,0x04,0x00,0x04,0x04,0x00,0x04,0x04,0x00,0x06,0x0C,0x00,0x03,0xF8,0x00,0x01,0xF0,0x00,0x00,0x00,0x00},/*"P",48*/
{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x88,0x04,0x00,0x88,0x04,0x00,0xC8,0x06,0x00,0x3C,0x03,0x00,0x3E,0x01,0xFF,0xE6,0x00,0x7F,0x84,0x00,0x00,0x00},/*"Q",49*/
{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x00,0x04,0x0C,0x00,0x04,0x0F,0x00,0x04,0x0B,0xC0,0x06,0x10,0xF0,0x03,0xF0,0x38,0x01,0xE0,0x08,0x00,0x00,0x08},/*"R",50*/
{0x00,0x00,0x00,0x01,0xE0,0xF8,0x03,0xF0,0x30,0x06,0x30,0x10,0x04,0x18,0x08,0x04,0x18,0x08,0x04,0x0C,0x08,0x04,0x0C,0x08,0x02,0x06,0x18,0x02,0x07,0xF0,0x07,0x81,0xE0,0x00,0x00,0x00},/*"S",51*/
{0x01,0x80,0x00,0x06,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x00,0x04,0x00,0x00,0x06,0x00,0x00,0x01,0x80,0x00},/*"T",52*/
{0x04,0x00,0x00,0x07,0xFF,0xE0,0x07,0xFF,0xF0,0x04,0x00,0x18,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x04,0x00,0x10,0x07,0xFF,0xE0,0x04,0x00,0x00},/*"U",53*/
{0x04,0x00,0x00,0x06,0x00,0x00,0x07,0xE0,0x00,0x07,0xFE,0x00,0x04,0x1F,0xE0,0x00,0x01,0xF8,0x00,0x00,0x38,0x00,0x01,0xE0,0x04,0x3E,0x00,0x07,0xC0,0x00,0x06,0x00,0x00,0x04,0x00,0x00},/*"V",54*/
{0x04,0x00,0x00,0x07,0xE0,0x00,0x07,0xFF,0xC0,0x04,0x1F,0xF8,0x00,0x07,0xC0,0x07,0xF8,0x00,0x07,0xFF,0x80,0x04,0x3F,0xF8,0x00,0x07,0xC0,0x04,0xF8,0x00,0x07,0x00,0x00,0x04,0x00,0x00},/*"W",55*/
{0x00,0x00,0x00,0x04,0x00,0x08,0x06,0x00,0x18,0x07,0xC0,0x78,0x05,0xF1,0xC8,0x00,0x3E,0x00,0x00,0x1F,0x80,0x04,0x63,0xE8,0x07,0x80,0xF8,0x06,0x00,0x18,0x04,0x00,0x08,0x00,0x00,0x00},/*"X",56*/
{0x04,0x00,0x00,0x06,0x00,0x00,0x07,0x80,0x00,0x07,0xE0,0x08,0x04,0x7C,0x08,0x00,0x1F,0xF8,0x00,0x07,0xF8,0x00,0x18,0x08,0x04,0xE0,0x08,0x07,0x00,0x00,0x06,0x00,0x00,0x04,0x00,0x00},/*"Y",57*/
{0x00,0x00,0x00,0x01,0x00,0x08,0x06,0x00,0x38,0x04,0x00,0xF8,0x04,0x03,0xE8,0x04,0x0F,0x08,0x04,0x7C,0x08,0x05,0xF0,0x08,0x07,0xC0,0x08,0x07,0x00,0x18,0x04,0x00,0x60,0x00,0x00,0x00},/*"Z",58*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xFE,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x00,0x00,0x00},/*"[",59*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x07,0x00,0x00,0x00,0xC0,0x00,0x00,0x38,0x00,0x00,0x06,0x00,0x00,0x01,0xC0,0x00,0x00,0x30,0x00,0x00,0x0E,0x00,0x00,0x01,0x00,0x00,0x00},/*"\",60*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x3F,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"]",61*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x10,0x00,0x00,0x30,0x00,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x10,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",62*/
{0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01},/*"_",63*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/
{0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x19,0xF8,0x00,0x1B,0x18,0x00,0x22,0x08,0x00,0x26,0x08,0x00,0x24,0x08,0x00,0x24,0x10,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x18},/*"a",65*/
{0x00,0x00,0x00,0x04,0x00,0x00,0x07,0xFF,0xF8,0x0F,0xFF,0xF0,0x00,0x18,0x18,0x00,0x10,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x18,0x00,0x1F,0xF0,0x00,0x0F,0xC0,0x00,0x00,0x00},/*"b",66*/
{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x18,0x30,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x3C,0x08,0x00,0x1C,0x10,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00},/*"c",67*/
{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x38,0x18,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x04,0x10,0x10,0x07,0xFF,0xF8,0x0F,0xFF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00},/*"d",68*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x12,0x30,0x00,0x22,0x18,0x00,0x22,0x08,0x00,0x22,0x08,0x00,0x32,0x08,0x00,0x1E,0x10,0x00,0x0E,0x20,0x00,0x00,0x00},/*"e",69*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x01,0xFF,0xF8,0x03,0xFF,0xF8,0x06,0x20,0x08,0x04,0x20,0x08,0x04,0x20,0x08,0x07,0x20,0x00,0x03,0x00,0x00,0x00,0x00,0x00},/*"f",70*/
{0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x0E,0x6E,0x00,0x1F,0xF3,0x00,0x31,0xB1,0x00,0x20,0xB1,0x00,0x20,0xB1,0x00,0x31,0x91,0x00,0x1F,0x13,0x00,0x2E,0x1E,0x00,0x20,0x0E,0x00,0x30,0x00},/*"g",71*/
{0x00,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x00},/*"h",72*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x06,0x3F,0xF8,0x06,0x3F,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"i",73*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x03,0x00,0x20,0x01,0x00,0x20,0x01,0x00,0x20,0x03,0x06,0x3F,0xFE,0x06,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"j",74*/
{0x00,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x01,0x88,0x00,0x03,0x00,0x00,0x2F,0xC0,0x00,0x38,0xF8,0x00,0x20,0x38,0x00,0x20,0x08,0x00,0x00,0x08,0x00,0x00,0x00},/*"k",75*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"l",76*/
{0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x00,0x08},/*"m",77*/
{0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x10,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x00},/*"n",78*/
{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x0F,0xF0,0x00,0x18,0x30,0x00,0x30,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x08,0x00,0x18,0x30,0x00,0x0F,0xF0,0x00,0x07,0xC0,0x00,0x00,0x00},/*"o",79*/
{0x00,0x00,0x00,0x00,0x20,0x01,0x00,0x3F,0xFF,0x00,0x3F,0xFF,0x00,0x10,0x11,0x00,0x20,0x09,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x38,0x00,0x1F,0xF0,0x00,0x0F,0xC0,0x00,0x00,0x00},/*"p",80*/
{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x38,0x18,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x09,0x00,0x10,0x11,0x00,0x1F,0xFF,0x00,0x3F,0xFF,0x00,0x00,0x01,0x00,0x00,0x00},/*"q",81*/
{0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x08,0x08,0x00,0x10,0x08,0x00,0x20,0x08,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x00,0x00},/*"r",82*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x78,0x00,0x1E,0x18,0x00,0x33,0x08,0x00,0x23,0x08,0x00,0x21,0x08,0x00,0x21,0x88,0x00,0x21,0x98,0x00,0x30,0xF0,0x00,0x38,0x60,0x00,0x00,0x00},/*"s",83*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0xFF,0xF0,0x03,0xFF,0xF8,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00},/*"t",84*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x3F,0xF0,0x00,0x7F,0xF8,0x00,0x00,0x18,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x20,0x10,0x00,0x3F,0xF8,0x00,0x7F,0xF0,0x00,0x00,0x10,0x00,0x00,0x00},/*"u",85*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x3C,0x00,0x00,0x3F,0x80,0x00,0x23,0xF0,0x00,0x00,0x78,0x00,0x00,0x70,0x00,0x23,0x80,0x00,0x3C,0x00,0x00,0x30,0x00,0x00,0x20,0x00},/*"v",86*/
{0x00,0x20,0x00,0x00,0x3C,0x00,0x00,0x3F,0xE0,0x00,0x23,0xF8,0x00,0x00,0xE0,0x00,0x27,0x00,0x00,0x3E,0x00,0x00,0x3F,0xE0,0x00,0x21,0xF8,0x00,0x01,0xE0,0x00,0x3E,0x00,0x00,0x20,0x00},/*"w",87*/
{0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x38,0x38,0x00,0x3E,0x68,0x00,0x27,0x80,0x00,0x03,0xC8,0x00,0x2C,0xF8,0x00,0x38,0x38,0x00,0x20,0x18,0x00,0x20,0x08,0x00,0x00,0x00},/*"x",88*/
{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x30,0x03,0x00,0x3C,0x01,0x00,0x3F,0x83,0x00,0x23,0xEC,0x00,0x00,0x70,0x00,0x23,0x80,0x00,0x3C,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"y",89*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x08,0x00,0x20,0x38,0x00,0x20,0xF8,0x00,0x23,0xE8,0x00,0x2F,0x88,0x00,0x3E,0x08,0x00,0x38,0x08,0x00,0x20,0x18,0x00,0x00,0x70,0x00,0x00,0x00},/*"z",90*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x14,0x00,0x1F,0xF7,0xFC,0x30,0x00,0x06,0x20,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00},/*"{",91*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x02,0x30,0x00,0x06,0x1F,0xF7,0xFC,0x00,0x14,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"}",93*/
{0x00,0x00,0x00,0x18,0x00,0x00,0x60,0x00,0x00,0x40,0x00,0x00,0x40,0x00,0x00,0x20,0x00,0x00,0x10,0x00,0x00,0x08,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00,0x0C,0x00,0x00,0x10,0x00,0x00},/*"~",94*/
};
// ------------------ 漢字字模的數據結構定義 ------------------------ //
struct Cn32CharTypeDef // 漢字字模數據結構
{
unsigned char Index[2]; // 漢字內碼索引,一個漢字佔兩個字節
unsigned char Msk[116]; // 點陣碼數據(32*29/8)
};
/////////////////////////////////////////////////////////////////////////
// 漢字字模表,大小爲:32*29 //
// 漢字庫: 宋體二號,橫向取模左高位,數據排列:從左到右從上到下 //
/////////////////////////////////////////////////////////////////////////
code struct Cn32CharTypeDef const CnChar32x29[]=
{
/*-- 文字: 普 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"普",0x00,0x00,0x00,0x00,0x00,0xE0,0x38,0x00,0x00,0x78,0x3C,0x00,0x00,0x3C,0x78,0x00,
0x00,0x3C,0x70,0xC0,0x00,0x1C,0xE1,0xE0,0x1F,0xFF,0xFF,0xF0,0x00,0x1C,0xE3,0x00,
0x0E,0x1C,0xE7,0xC0,0x07,0x9C,0xE7,0x80,0x03,0xDC,0xEF,0x00,0x03,0xDC,0xEE,0x00,
0x01,0xDC,0xFC,0x60,0x00,0x9C,0xF9,0xF0,0x7F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x00,
0x01,0xC0,0x0E,0x00,0x01,0xFF,0xFF,0x00,0x01,0xC0,0x0E,0x00,0x01,0xC0,0x0E,0x00,
0x01,0xC0,0x0E,0x00,0x01,0xFF,0xFE,0x00,0x01,0xC0,0x0E,0x00,0x01,0xC0,0x0E,0x00,
0x01,0xC0,0x0E,0x00,0x01,0xFF,0xFE,0x00,0x01,0xC0,0x0E,0x00,0x01,0xC0,0x0E,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 中 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"中",0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0x07,0x00,0x00,
0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x01,0x80,0x1F,0xFF,0xFF,0xE0,
0x1F,0xFF,0xFF,0xE0,0x1E,0x07,0x01,0xC0,0x1E,0x07,0x01,0xC0,0x1E,0x07,0x01,0xC0,
0x1E,0x07,0x01,0xC0,0x1E,0x07,0x01,0xC0,0x1E,0x07,0x01,0xC0,0x1F,0xFF,0xFF,0xC0,
0x1F,0xFF,0xFF,0xC0,0x1E,0x07,0x01,0xC0,0x1C,0x07,0x01,0x80,0x00,0x07,0x00,0x00,
0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,
0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 科 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"科",0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x3C,0x07,0xC0,0x01,0xFC,0x07,0x80,
0x3F,0xE0,0x07,0x80,0x39,0xC1,0xC7,0x80,0x01,0xC0,0xE7,0x80,0x01,0xC0,0xF7,0x80,
0x01,0xC0,0x77,0x80,0x01,0xDE,0x77,0x80,0x7F,0xFE,0x07,0x80,0x01,0xC0,0x07,0x80,
0x03,0xC3,0xC7,0x80,0x03,0xE1,0xE7,0x80,0x03,0xF8,0xF7,0x80,0x07,0xFC,0xE7,0xF0,
0x0F,0xDE,0x67,0xF8,0x0F,0xDC,0x07,0xF8,0x1F,0xC0,0xFF,0x80,0x1D,0xDF,0xE7,0x80,
0x39,0xCC,0x07,0x80,0x71,0xC0,0x07,0x80,0x61,0xC0,0x07,0x80,0x01,0xC0,0x07,0x80,
0x01,0xC0,0x07,0x80,0x01,0xE0,0x07,0x80,0x01,0xE0,0x07,0x80,0x01,0xC0,0x07,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 技 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"技",0x00,0x00,0x00,0x00,0x03,0x80,0x30,0x00,0x03,0xC0,0x3C,0x00,0x03,0xC0,0x3C,0x00,
0x03,0xC0,0x38,0x00,0x03,0xC0,0x38,0x00,0x03,0xC0,0x38,0x60,0x03,0xF8,0x38,0xF0,
0x7F,0xFF,0xFF,0xF0,0x03,0xC0,0x38,0x00,0x03,0xC0,0x38,0x00,0x03,0xC0,0x38,0x00,
0x03,0xDC,0x39,0xC0,0x03,0xFF,0xFF,0xE0,0x07,0xE3,0x83,0xC0,0x3F,0xC1,0x83,0xC0,
0x7F,0xC1,0xC3,0x80,0x3B,0xC1,0xC7,0x80,0x03,0xC0,0xEF,0x00,0x03,0xC0,0xEF,0x00,
0x03,0xC0,0x7E,0x00,0x03,0xC0,0x7C,0x00,0x03,0xC0,0x7C,0x00,0x03,0xC0,0xFE,0x00,
0x3B,0xC3,0xEF,0x80,0x3F,0x87,0x87,0xF8,0x0F,0xBF,0x03,0xF8,0x07,0x78,0x00,0xE0,
0x00,0x00,0x00,0x00,
/*-- 文字: 年 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"年",0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x01,0xF0,0x00,0x00,0x01,0xE0,0x00,0x00,
0x03,0xC0,0x00,0xC0,0x03,0xC0,0x01,0xE0,0x07,0xFF,0xFF,0xF0,0x07,0x03,0xC0,0x00,
0x0E,0x03,0xC0,0x00,0x1E,0x03,0xC0,0x00,0x3C,0x03,0xC3,0x00,0x73,0x03,0xC7,0x80,
0x63,0xFF,0xFF,0xC0,0x03,0x83,0xC0,0x00,0x03,0x83,0xC0,0x00,0x03,0x83,0xC0,0x00,
0x03,0x83,0xC0,0x00,0x03,0x83,0xC0,0x60,0x03,0x83,0xC0,0xF0,0x7F,0xFF,0xFF,0xF8,
0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,
0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 月 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"月",0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x07,0x00,0x00,0xFF,0xFF,0x80,
0x00,0xF0,0x07,0x80,0x00,0xF0,0x07,0x00,0x00,0xF0,0x07,0x00,0x00,0xF0,0x07,0x00,
0x00,0xF0,0x07,0x00,0x00,0xFF,0xFF,0x00,0x00,0xFF,0xFF,0x00,0x00,0xF0,0x07,0x00,
0x00,0xF0,0x07,0x00,0x00,0xF0,0x07,0x00,0x00,0xF0,0x07,0x00,0x00,0xE0,0x07,0x00,
0x00,0xFF,0xFF,0x00,0x00,0xE0,0x07,0x00,0x00,0xE0,0x07,0x00,0x00,0xE0,0x07,0x00,
0x01,0xE0,0x07,0x00,0x01,0xC0,0x07,0x00,0x01,0xC0,0x07,0x00,0x03,0x80,0x07,0x00,
0x07,0x80,0xF7,0x00,0x0F,0x00,0x7F,0x00,0x1E,0x00,0x1F,0x00,0x38,0x00,0x1C,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 日 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"日",0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x00,0x03,0xFF,0xFF,0x80,
0x03,0xFF,0xFF,0x80,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,
0x03,0x80,0x07,0x00,0x03,0xFF,0xFF,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0xFF,0xFF,0x00,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 星 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"星",0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x07,0x00,0x03,0xFF,0xFF,0x80,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0xFF,0xFF,0x00,
0x03,0x80,0x07,0x00,0x03,0x80,0x07,0x00,0x03,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0x00,
0x03,0x87,0x07,0x00,0x03,0x87,0xC0,0x00,0x03,0xC7,0x81,0x00,0x03,0xC7,0x83,0x80,
0x07,0xFF,0xFF,0xC0,0x07,0x07,0x80,0x00,0x0F,0x07,0x80,0x00,0x1E,0x07,0x86,0x00,
0x1C,0x07,0x8F,0x00,0x3B,0xFF,0xFF,0x80,0x70,0x07,0x80,0x00,0x00,0x07,0x80,0x00,
0x00,0x07,0x80,0xE0,0x00,0x07,0x81,0xF0,0x7F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
/*-- 文字: 期 --*/
/*-- 宋體22; 此字體下對應的點陣爲:寬x高=30x29 --*/
/*-- 寬度不是8的倍數,現調整爲:寬度x高度=32x29 --*/
"期",0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x9E,0x00,0x00,0x07,0x9E,0x7F,0xF0,
0x07,0x9E,0x7F,0xF0,0x07,0x9F,0xF8,0xF0,0x3F,0xFF,0xF8,0xF0,0x1F,0x9E,0x78,0xF0,
0x07,0x9E,0x78,0xF0,0x07,0x9E,0x78,0xF0,0x07,0xFE,0x7F,0xF0,0x07,0x9E,0x78,0xF0,
0x07,0x9E,0x78,0xF0,0x07,0x9E,0x70,0xF0,0x07,0xFE,0x70,0xF0,0x07,0x9E,0x70,0xF0,
0x07,0x9E,0x7F,0xF0,0x07,0x9F,0xFF,0xF0,0x3F,0xFF,0xF0,0xF0,0x11,0x90,0x70,0xF0,
0x03,0xDC,0xF0,0xF0,0x03,0xDE,0xE0,0xF0,0x07,0x8F,0xE0,0xF0,0x0F,0x0F,0xE0,0xF0,
0x0E,0x07,0xC0,0xF0,0x1C,0x03,0x8F,0xF0,0x38,0x0F,0x03,0xE0,0x20,0x1C,0x01,0xC0,
0x00,0x00,0x00,0x00,
};
#endif