Nokia5110驅動
*說明:本驅動適用于51單片機(5V或3.3V),液晶的VCC接5V或3.3V 修改偏置電壓可改變5110點陣顯示的亮度 5110接5V時偏置電壓改為(0xa7,0),接3.3V時改為(0xc0,0) *作者:JK *創建日期:2013/1/26 *修改日期: *************************************************************** */
#include <reg52.h> #include "font.h"
#define uint unsigned int #define uchar unsigned char
/* ********************************************************** IO口定義區 ********************************************************** */
sbit LCD_RST = P0^0; sbit LCD_CE = P0^1; sbit LCD_DC = P0^2; sbit LCD_DIN = P0^3; sbit LCD_CLK = P0^4;
/* ********************************************************** 函數聲明區 ********************************************************** */ void LCD_Init(void); void LCD_WriteByte(unsigned char dat,unsigned char command); void LCD_Set_XY(unsigned char X, unsignedchar Y); void LCD_Clear(void); void LCD_WriteChar(unsigned char x,unsignedchar y,unsigned char c); void LCD_WriteString(unsigned charX,unsigned char Y,char *s); void LCD_WriteNum(unsigned char X,unsignedchar Y,unsigned int num); void LCD_Write_12X16Font(unsigned charx,unsigned char y,unsigned char c[2]); void LCD_DrawPicture(unsigned charX,unsigned char Y,unsigned char const *map, unsigned char Pix_x,unsignedchar Pix_y);
/* ********************************************************** *函數名:LCD_Init *功能:初始化LCD *參數:無
*返回值:無 *備注: ********************************************************** */ void LCD_Init(void) { unsigned char i; LCD_RST=0; //復位 for(i=0;i<150;i++);
LCD_RST=1; LCD_WriteByte(0x21, 0); // 使用擴展命令設置LCD模式
LCD_WriteByte(0xc0, 0); // 設置偏置電壓,修改可改變5110點陣顯示的亮度 /*5110接5V時偏置電壓改為(0xa7,0),接3.3V時改為(0xc0,0)*/
LCD_WriteByte(0x20, 0); // 使用基本命令。并設置V=0,水平尋址 LCD_Clear(); // 清屏 LCD_WriteByte(0x0c, 0); // 設定顯示模式,正常顯示(普通顯示) LCD_CE=0; }
/* ********************************************************** *函數名:LCD_WriteByte *功能:模擬SPI接口時序寫數據/命令LCD *參數:data :寫入的數據; command :寫數據(1)/命令選擇(0); *返回值:無 *備注: ********************************************************** */ void LCD_WriteByte(unsigned char dat,unsigned char command) { unsigned char i; LCD_CE=0; //5110片選有效,允許輸入數據 if(command == 0) //寫命令 LCD_DC=0; else LCD_DC=1; //寫數據 for(i=0;i<8;i++) //傳送8bit數據 { if(dat&0x80) LCD_DIN=1; else LCD_DIN=0; LCD_CLK=0; dat = dat << 1; LCD_CLK=1; } LCD_CE=1; //禁止5110 }
/* ********************************************************** *函數名:LCD_Set_XY *功能:設置LCD坐標 *參數: X:0-83 Y:0-5 *返回值:無 *備注: ********************************************************** */ void LCD_Set_XY(unsigned char X, unsignedchar Y) { LCD_WriteByte(0x40 | Y, 0);// column 列 LCD_WriteByte(0x80 | X, 0);// row 行 }
/* ********************************************************** *函數名:LCD_Clear *功能: LCD清屏函數 *參數:無 *返回值:無 *備注: ********************************************************** */ void LCD_Clear(void) { unsigned char t; unsigned char k; LCD_Set_XY(0, 0);//設置RAM起始地址 for(t=0;t<6;t++) { for(k=0;k<84;k++) { LCD_WriteByte(0x00,1); } } }
/* ********************************************************** *函數名:LCD_WriteChar *功能: LCD寫一個6X8的字符 *參數:c *返回值:無 備 注: ********************************************************** */ voidLCD_WriteChar(unsigned char x,unsigned char y,unsigned char c) { unsigned char i; c -= 32; //數組的行號 LCD_Set_XY(x,y); for(i=0; i<12; i++) { LCD_WriteByte(font6x12[c], 1); if(i==5) { y++; LCD_Set_XY(x,y); } }
}
/* ********************************************************** *函數名:LCD_WriteString *功能: LCD寫6X8的字符串 *參數:X , Y , S *返回值:無 備 注: ********************************************************** */ void LCD_WriteString(unsigned charX,unsigned char Y,char *s) { while(*s) { LCD_WriteChar(X,Y,*s); s++; X += 6; } }
/* *************************************************************** *函數名:LCD_WriteNum(unsigned int num) *功能:寫入數字 *參數:num *返回值:無 **************************************************************** */ void LCD_WriteNum(unsigned char X,unsignedchar Y,unsigned int num) { unsigned char str[8],i=0,len=0; unsigned int temp; temp = num; while(temp) { temp /=10; len++; } if(!num) { len++; str[0]=0x30; } str[len] = 0; while(num) { str[len-i-1] = num%10 + 0x30; num /=10; i++; } LCD_WriteString(X,Y,(char *)str); }
/* ********************************************************** *函數名:LCD_Write_16X16Font *功能:寫一個16X16的漢字 *參數:x , y , c[2] x:0-83y:0-5 *返回值:無 *備注: ********************************************************** */ void LCD_Write_12X16Font(unsigned charx,unsigned char y,unsigned char c[2]) { unsigned char i,k; LCD_Set_XY(x,y); for(k=0; k<25; k++) //K的值表示漢字庫最多存放的字的數量(可改大) { if((font12x16[k].Index[0]==c[0])&&(font12x16[k].Index[1]==c[1])) { for(i=0; i<24; i++) { LCD_WriteByte(font12x16[k].Msk,1); if(i==11) { y++; LCD_Set_XY(x,y); } } } } } /* ********************************************************** *函數名:LCD_DrawPicture *功能:繪圖 *參數: X、Y :位圖繪制的起始X、Y坐標; *map :位圖點陣數據; Pix_x :位圖像素(長) <=84 Pix_y :位圖像素(寬) <=48 *返回值:無 *備注: ********************************************************** */ void LCD_DrawPicture(unsigned charX,unsigned char Y,unsigned char const *map, unsigned charPix_x,unsigned char Pix_y) { unsignedint i,n; unsignedchar row; //計算位圖所占行數 if(Pix_y%8==0) //如果為位圖所占行數為整數 row=Pix_y/8; else row=Pix_y/8+1; //如果為位圖所占行數不是整數 LCD_Set_XY(X,Y); for(n=0;n<row;n++) //換行 { for(i=0;i<Pix_x;i++) { LCD_Set_XY(X+i,Y+n); LCD_WriteByte(map[i+n*Pix_x],1); } } } /* ********************************************************** -------main函數-------- *函數名:主函數 *備注: ********************************************************** */ void main() { LCD_Init(); while(1) { LCD_WriteNum(0,0,123);// 寫入數字 int型的 LCD_WriteNum(18,0,7);// 寫入數字 int型的 LCD_WriteNum(24,0,9); LCD_WriteChar(48,0,'I');//寫一個6X8的字符 LCD_WriteChar(54,0,'J'); LCD_WriteChar(60,0,'K'); LCD_WriteString(0,2,"jhf"); //寫6X8的字符串 LCD_DrawPicture(32,2,gImage_1,16,16); //繪圖 LCD_Write_12X16Font(12,4,"我"); //寫一個16X16的漢字 LCD_Write_12X16Font(24,4,"是"); LCD_Write_12X16Font(36,4,"中"); LCD_Write_12X16Font(48,4,"國"); LCD_Write_12X16Font(60,4,"銀"); } } ///////////////////////////////////////// 以下是 font.h 的內容/////////////////////////////////////////////////// /* ********************************************************** *說明:該font.h 文件中包含的是5110顯示所用的ASCII、部分漢字、 及圖片字模。取模軟件使用“PCtoLCD2002”,取模方式選項: 陰碼、逆向、列行式、十六進制數。漢字取模:寬12 、高 12 ********************************************************** */ // 6 x 8 font // 1 pixel space at left and bottom // index = ASCII - 32 code unsigned char font6x12[][12] = { /*-- 文字: --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: ! --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00}, /*-- 文字: " --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x0C,0x02,0x0C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: # --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x90,0xD0,0xBC,0xD0,0xBC,0x90,0x00,0x03,0x00,0x03,0x00,0x00}, /*-- 文字: $ --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x18,0x24,0xFE,0x44,0x8C,0x00,0x03,0x02,0x07,0x02,0x01,0x00}, /*-- 文字: % --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x18,0x24,0xD8,0xB0,0x4C,0x80,0x00,0x03,0x00,0x01,0x02,0x01}, /*-- 文字: & --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xC0,0x38,0xE4,0x38,0xE0,0x00,0x01,0x02,0x02,0x01,0x02,0x02}, /*-- 文字: ' --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x08,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: ( --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0xF8,0x04,0x02,0x00,0x00,0x00,0x01,0x02,0x04}, /*-- 文字: ) --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x02,0x04,0xF8,0x00,0x00,0x00,0x04,0x02,0x01,0x00,0x00}, /*-- 文字: * --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x90,0x60,0xF8,0x60,0x90,0x00,0x00,0x00,0x01,0x00,0x00,0x00}, /*-- 文字: + --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0x20,0xFC,0x20,0x20,0x00,0x00,0x00,0x01,0x00,0x00,0x00}, /*-- 文字: , --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x06,0x00,0x00,0x00,0x00}, /*-- 文字: - --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: . --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00}, /*-- 文字: / --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x80,0x60,0x1C,0x02,0x00,0x04,0x03,0x00,0x00,0x00,0x00}, /*-- 文字: 0 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x04,0x04,0x04,0xF8,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: 1 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x08,0xFC,0x00,0x00,0x00,0x00,0x02,0x03,0x02,0x00,0x00}, /*-- 文字: 2 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x18,0x84,0x44,0x24,0x18,0x00,0x03,0x02,0x02,0x02,0x02,0x00}, /*-- 文字: 3 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x08,0x04,0x24,0x24,0xD8,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: 4 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x40,0xB0,0x88,0xFC,0x80,0x00,0x00,0x00,0x00,0x03,0x02,0x00}, /*-- 文字: 5 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x3C,0x24,0x24,0x24,0xC4,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: 6 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x24,0x24,0x2C,0xC0,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: 7 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x0C,0x04,0xE4,0x1C,0x04,0x00,0x00,0x00,0x03,0x00,0x00,0x00}, /*-- 文字: 8 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xD8,0x24,0x24,0x24,0xD8,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: 9 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x38,0x44,0x44,0x44,0xF8,0x00,0x00,0x03,0x02,0x02,0x01,0x00}, /*-- 文字: : --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00}, /*-- 文字: ; --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00}, /*-- 文字: < --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x20,0x50,0x88,0x04,0x02,0x00,0x00,0x00,0x00,0x01,0x02}, /*-- 文字: = --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x90,0x90,0x90,0x90,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: > --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x02,0x04,0x88,0x50,0x20,0x00,0x02,0x01,0x00,0x00,0x00}, /*-- 文字: ? --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x18,0x04,0xC4,0x24,0x18,0x00,0x00,0x00,0x02,0x00,0x00,0x00}, /*-- 文字: @ --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x04,0xE4,0x94,0xF8,0x00,0x01,0x02,0x02,0x02,0x02,0x00}, /*-- 文字: A --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xE0,0x9C,0xF0,0x80,0x00,0x02,0x03,0x00,0x00,0x03,0x02}, /*-- 文字: B --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0x24,0xD8,0x00,0x02,0x03,0x02,0x02,0x01,0x00}, /*-- 文字: C --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x04,0x04,0x04,0x0C,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: D --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x04,0x04,0xF8,0x00,0x02,0x03,0x02,0x02,0x01,0x00}, /*-- 文字: E --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0x74,0x0C,0x00,0x02,0x03,0x02,0x02,0x03,0x00}, /*-- 文字: F --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0x74,0x0C,0x00,0x02,0x03,0x02,0x00,0x00,0x00}, /*-- 文字: G --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF0,0x08,0x04,0x44,0xCC,0x40,0x00,0x01,0x02,0x02,0x01,0x00}, /*-- 文字: H --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x20,0x20,0xFC,0x04,0x02,0x03,0x00,0x00,0x03,0x02}, /*-- 文字: I --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0x04,0xFC,0x04,0x04,0x00,0x02,0x02,0x03,0x02,0x02,0x00}, /*-- 文字: J --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x04,0x04,0xFC,0x04,0x04,0x06,0x04,0x04,0x03,0x00,0x00}, /*-- 文字: K --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0xD0,0x0C,0x04,0x02,0x03,0x02,0x00,0x03,0x02}, /*-- 文字: L --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x04,0x00,0x00,0x00,0x02,0x03,0x02,0x02,0x02,0x03}, /*-- 文字: M --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xFC,0x3C,0xC0,0x3C,0xFC,0x00,0x03,0x00,0x03,0x00,0x03,0x00}, /*-- 文字: N --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x30,0xC4,0xFC,0x04,0x02,0x03,0x02,0x00,0x03,0x00}, /*-- 文字: O --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x04,0x04,0x04,0xF8,0x00,0x01,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: P --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0x24,0x18,0x00,0x02,0x03,0x02,0x00,0x00,0x00}, /*-- 文字: Q --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xF8,0x84,0x84,0x04,0xF8,0x00,0x01,0x02,0x02,0x07,0x05,0x00}, /*-- 文字: R --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x24,0x64,0x98,0x00,0x02,0x03,0x02,0x00,0x03,0x02}, /*-- 文字: S --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x18,0x24,0x24,0x44,0x8C,0x00,0x03,0x02,0x02,0x02,0x01,0x00}, /*-- 文字: T --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x0C,0x04,0xFC,0x04,0x0C,0x00,0x00,0x02,0x03,0x02,0x00,0x00}, /*-- 文字: U --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x00,0x00,0xFC,0x04,0x00,0x01,0x02,0x02,0x01,0x00}, /*-- 文字: V --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0x7C,0x80,0xE0,0x1C,0x04,0x00,0x00,0x03,0x00,0x00,0x00}, /*-- 文字: W --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x1C,0xE0,0x3C,0xE0,0x1C,0x00,0x00,0x03,0x00,0x03,0x00,0x00}, /*-- 文字: X --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0x9C,0x60,0x9C,0x04,0x00,0x02,0x03,0x00,0x03,0x02,0x00}, /*-- 文字: Y --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0x1C,0xE0,0x1C,0x04,0x00,0x00,0x02,0x03,0x02,0x00,0x00}, /*-- 文字: Z --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x0C,0x84,0x64,0x1C,0x04,0x00,0x02,0x03,0x02,0x02,0x03,0x00}, /*-- 文字: [ --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0xFE,0x02,0x02,0x00,0x00,0x00,0x07,0x04,0x04,0x00}, /*-- 文字: | --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x00}, /*-- 文字: ] --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x02,0x02,0xFE,0x00,0x00,0x00,0x04,0x04,0x07,0x00,0x00}, /*-- 文字: ^ --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x04,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: _ --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08}, /*-- 文字: ' --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x08,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /*-- 文字: a --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x40,0xA0,0xA0,0xC0,0x00,0x00,0x01,0x02,0x02,0x03,0x02}, /*-- 文字: b --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x20,0x20,0xC0,0x00,0x00,0x03,0x02,0x02,0x01,0x00}, /*-- 文字: c --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xC0,0x20,0x20,0x60,0x00,0x00,0x01,0x02,0x02,0x02,0x00}, /*-- 文字: d --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xC0,0x20,0x24,0xFC,0x00,0x00,0x01,0x02,0x02,0x03,0x02}, /*-- 文字: e --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xC0,0xA0,0xA0,0xC0,0x00,0x00,0x01,0x02,0x02,0x02,0x00}, /*-- 文字: f --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x20,0xF8,0x24,0x24,0x04,0x00,0x02,0x03,0x02,0x02,0x00}, /*-- 文字: g --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x40,0xA0,0xA0,0x60,0x20,0x00,0x07,0x0A,0x0A,0x0A,0x04}, /*-- 文字: h --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x20,0x20,0xC0,0x00,0x02,0x03,0x02,0x00,0x03,0x02}, /*-- 文字: i --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x20,0xE4,0x00,0x00,0x00,0x00,0x02,0x03,0x02,0x00,0x00}, /*-- 文字: j --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x00,0x20,0xE4,0x00,0x00,0x08,0x08,0x08,0x07,0x00,0x00}, /*-- 文字: k --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0xFC,0x80,0xE0,0x20,0x20,0x02,0x03,0x02,0x00,0x03,0x02}, /*-- 文字: l --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x04,0x04,0xFC,0x00,0x00,0x00,0x02,0x02,0x03,0x02,0x02,0x00}, /*-- 文字: m --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0xE0,0x20,0xE0,0x20,0xC0,0x00,0x03,0x00,0x03,0x00,0x03,0x00}, /*-- 文字: n --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x20,0x20,0xC0,0x00,0x02,0x03,0x02,0x00,0x03,0x02}, /*-- 文字: o --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xC0,0x20,0x20,0xC0,0x00,0x00,0x01,0x02,0x02,0x01,0x00}, /*-- 文字: p --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x20,0x20,0xC0,0x00,0x08,0x0F,0x0A,0x02,0x01,0x00}, /*-- 文字: q --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0xC0,0x20,0x20,0xE0,0x00,0x00,0x01,0x02,0x0A,0x0F,0x08}, /*-- 文字: r --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x40,0x20,0x20,0x00,0x02,0x03,0x02,0x00,0x00,0x00}, /*-- 文字: s --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x60,0xA0,0xA0,0x20,0x00,0x00,0x02,0x02,0x02,0x03,0x00}, /*-- 文字: t --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x20,0xF8,0x20,0x00,0x00,0x00,0x00,0x01,0x02,0x02,0x00}, /*-- 文字: u --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x00,0x20,0xE0,0x00,0x00,0x01,0x02,0x02,0x03,0x02}, /*-- 文字: v --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x20,0x80,0x60,0x20,0x00,0x00,0x03,0x01,0x00,0x00}, /*-- 文字: w --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x60,0x80,0xE0,0x80,0x60,0x00,0x00,0x03,0x00,0x03,0x00,0x00}, /*-- 文字: x --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0x60,0x80,0x60,0x20,0x00,0x02,0x03,0x00,0x03,0x02,0x00}, /*-- 文字: y --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x20,0xE0,0x20,0x80,0x60,0x20,0x08,0x08,0x07,0x01,0x00,0x00}, /*-- 文字: z --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=6x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=6x16 --*/ {0x00,0x20,0xA0,0x60,0x20,0x00,0x00,0x02,0x03,0x02,0x02,0x00}, }; typedef struct { unsigned char Index[2]; unsignedchar Msk[24]; }TYPE_FONT12X16; codeTYPE_FONT12X16 font12x16[]= { /*-- 文字: 我 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=12x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=12x16 --*/ "我",0x10,0x12,0x12,0xFF,0x91,0x10,0xFF,0x10,0x90,0x52,0x14,0x00,0x02,0x02,0x09,0x0F, 0x00,0x04,0x02,0x03,0x04,0x08,0x0E,0x00, /*-- 文字: 是 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=12x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=12x16 --*/ "是",0x40,0x40,0x5F,0x55,0x55,0xD5,0x55,0x55,0x5F,0x40,0x40,0x00,0x08,0x04,0x03,0x04, 0x08,0x0F,0x09,0x09,0x09,0x09,0x08,0x00, /*-- 文字: 中 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=12x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=12x16 --*/ "中",0x00,0xF8,0x88,0x88,0x88,0xFF,0x88,0x88,0x88,0xF8,0x00,0x00,0x00,0x01,0x00,0x00, 0x00,0x0F,0x00,0x00,0x00,0x01,0x00,0x00, /*-- 文字: 國 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=12x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=12x16 --*/ "國",0xFF,0x01,0x25,0x25,0x25,0xFD,0x25,0x65,0xA5,0x01,0xFF,0x00,0x0F,0x05,0x05,0x05, 0x05,0x05,0x05,0x05,0x05,0x05,0x0F,0x00, /*-- 文字: 人 --*/ /*-- 宋體9; 此字體下對應的點陣為:寬x高=12x12 --*/ /*-- 高度不是8的倍數,現調整為:寬度x高度=12x16 --*/ "銀",0x98,0xF7,0x94,0x94,0x00,0xFF,0x49,0xC9,0x49,0x7F,0x80,0x00,0x00,0x0F,0x04,0x02,0x00, 0x0F,0x04,0x01,0x02,0x05,0x08,0x00,/*"",0*/ }; //數據水平,字節垂直,字節內像素數據反序 code unsignedchar gImage_1[] = { 0x00,0x00,0xE0,0xF0,0xF8,0xF8,0xF8,0xF0,0xE0,0xF0,0xF8, 0xF8,0xF8,0xF0,0xE0,0x00,0x00,0x00,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0x3F,0x1F,0x0F,0x07, 0x03,0x01,0x00}; |