糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 【单片机笔记】分享关于STM32 SPI驱动ST7789 LCD ISP TFT液晶屏幕

【单片机笔记】分享关于STM32 SPI驱动ST7789 LCD ISP TFT液晶屏幕

时间:2021-07-08 15:29:38

相关推荐

【单片机笔记】分享关于STM32 SPI驱动ST7789 LCD ISP TFT液晶屏幕

偶然的一次机会得到了一块1.3寸的彩色液晶,控制器为ST7789V,支持SPI。对应的其他大小的有2.0的和2.4的,spi用起来还是比较简单的,硬件接口线少方便,刷屏速度还是可以的。这里因为只有1.3的屏(240*240分辨率),所以只测试了1.3的,其他的因为控制器是一样的,所以基本都差不多,无非分辨率不一样。

TFT.C文件

#include "fy_tft.h"#define TFT_CMD 0#define TFT_DATA1u16 BACK_COLOR=TFT_COLOR_BLACK;u16 POINT_COLOR=TFT_COLOR_WHITE;#ifdef USE_SW_SPIvoid TFT_ReadWriteByte(u8 dat){u8 i;for(i=0; i<8; i++){TFT_SCLK_Clr();if(dat&0x80)TFT_SDIN_Set();elseTFT_SDIN_Clr();TFT_SCLK_Set();dat<<=1;}}#endifstatic void TFT_Gpio_Configuration(void) {//RST引脚和单片机的RST共用,单片机硬件复位TFT同时复位GPIO_InitTypeDef GPIO_InitStructure;#ifdef USE_SW_SPIRCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB,ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);GPIO_SetBits(GPIOA,GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9;GPIO_Init(GPIOB, &GPIO_InitStructure);GPIO_SetBits(GPIOB,GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9);//f-cs#elseGPIO_InitStructure.GPIO_Pin = GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOB, &GPIO_InitStructure);GPIO_SetBits(GPIOB,GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9);#endif}//TFT写一个字节数据//dat:写入的字节//cmd://0:命令//1:数据static void TFT_WriteByte(u8 dat,u8 cmd){if(cmd == TFT_CMD)TFT_DC_L(); //命令else TFT_DC_H();//数据 TFT_ReadWriteByte(dat);}//函数说明:设置起始和结束地址//入口数据:x1,x2 设置列的起始和结束地址//y1,y2 设置行的起始和结束地址//返回值: 无void LCD_Address_Set(u16 x1,u16 y1,u16 x2,u16 y2){x2 = x2>LCD_WIDTH ? LCD_WIDTH:x2;y2 = y2>LCD_WIDTH ? LCD_HEIGHT:y2;if(USE_HORIZONTAL==0){TFT_WriteByte(0x2a,TFT_CMD);//列地址设置TFT_WriteByte(x1>>8,TFT_DATA);TFT_WriteByte(x1,TFT_DATA);TFT_WriteByte(x2>>8,TFT_DATA);TFT_WriteByte(x2,TFT_DATA);TFT_WriteByte(0x2b,TFT_CMD);//行地址设置TFT_WriteByte(y1>>8,TFT_DATA);TFT_WriteByte(y1,TFT_DATA);TFT_WriteByte(y2>>8,TFT_DATA);TFT_WriteByte(y2,TFT_DATA);TFT_WriteByte(0x2c,TFT_CMD);//储存器写}else if(USE_HORIZONTAL==1){TFT_WriteByte(0x2a,TFT_CMD);//列地址设置TFT_WriteByte(x1>>8,TFT_DATA);TFT_WriteByte(x1,TFT_DATA);TFT_WriteByte(x2>>8,TFT_DATA);TFT_WriteByte(x2,TFT_DATA);TFT_WriteByte(0x2b,TFT_CMD);//行地址设置TFT_WriteByte((y1+80)>>8,TFT_DATA);TFT_WriteByte((y1+80),TFT_DATA);TFT_WriteByte((y2+80)>>8,TFT_DATA);TFT_WriteByte((y2+80),TFT_DATA);TFT_WriteByte(0x2c,TFT_CMD);//储存器写}else if(USE_HORIZONTAL==2){TFT_WriteByte(0x2a,TFT_CMD);//列地址设置TFT_WriteByte(x1>>8,TFT_DATA);TFT_WriteByte(x1,TFT_DATA);TFT_WriteByte(x2>>8,TFT_DATA);TFT_WriteByte(x2,TFT_DATA);TFT_WriteByte(0x2b,TFT_CMD);//行地址设置TFT_WriteByte(y1>>8,TFT_DATA);TFT_WriteByte(y1,TFT_DATA);TFT_WriteByte(y2>>8,TFT_DATA);TFT_WriteByte(y2,TFT_DATA);TFT_WriteByte(0x2c,TFT_CMD);//储存器写}else{TFT_WriteByte(0x2a,TFT_CMD);//列地址设置TFT_WriteByte((x1+80)>>8,TFT_DATA);TFT_WriteByte((x1+80),TFT_DATA);TFT_WriteByte((x2+80)>>8,TFT_DATA);TFT_WriteByte((x2+80),TFT_DATA);TFT_WriteByte(0x2b,TFT_CMD);//行地址设置TFT_WriteByte(y1>>8,TFT_DATA);TFT_WriteByte(y1,TFT_DATA);TFT_WriteByte(y2>>8,TFT_DATA);TFT_WriteByte(y2,TFT_DATA);TFT_WriteByte(0x2c,TFT_CMD);//储存器写}}void TFT_DisplayOn(void){TFT_WriteByte(0x29,TFT_CMD);}void TFT_DisplayOff(void){TFT_WriteByte(0x28,TFT_CMD);}//画点//x,y:起始坐标//color:颜色void TFT_DrawPoint(u16 x,u16 y,u16 color){LCD_Address_Set(x,y,x,y);//设置光标位置TFT_WriteByte(color>>8,TFT_DATA);TFT_WriteByte(color,TFT_DATA);}//填充区域//x1,y1:起始坐标//x2,y2:结束坐标//color:颜色void TFT_Fill(u16 x1,u16 y1,u16 x2,u16 y2,u16 color){u16 x,y;LCD_Address_Set(x1,y1,x2,y2);//设置光标位置for(x=x1; x<x2; x++){for(y=y1; y<y2; y++){TFT_WriteByte(color>>8,TFT_DATA); //设置光标位置TFT_WriteByte(color,TFT_DATA); //设置光标位置}}}//清屏void TFT_Clear(u16 color){u16 x,y;TFT_DisplayOff();//关闭显示LCD_Address_Set(0,0,LCD_WIDTH-1,LCD_HEIGHT-1);for(x=0; x<LCD_WIDTH; x++){for(y=0; y<LCD_HEIGHT; y++){ TFT_WriteByte(color>>8,TFT_DATA); //设置光标位置TFT_WriteByte(color,TFT_DATA); //设置光标位置}}TFT_DisplayOn();//打开显示}//在指定位置显示一个字符,包括部分字符//函数说明:显示字符//入口数据:x,y 起点坐标//chr 要显示的字符//mode 1叠加方式 0非叠加方式void TFT_ShowChar(u16 x,u16 y,u8 chr,u8 fw,u8 fh,u8 mode){u8 temp, t, tbit;u8 y0=y;u8 *p;u16 csize = csize=(fh/8+((fh%8)?1:0))*fw;// 得到字体一个字符对应点阵集所占的字节数chr=chr-' ';//得到偏移后的值if(fw==6&&fh==8) p = (u8 *)asc2_0608[chr];//调用0608ascii字体else if(fw==6&&fh==12) p = (u8 *)asc2_0612[chr];//调用0612ascii字体else if(fw==8&&fh==16) p = (u8 *)asc2_0816[chr];//调用0612ascii字体else if(fw==12&&fh==24) p = (u8 *)asc2_1224[chr]; //调用1224ascii字体else return;//没有的字库for(t = 0; t < csize; t++)/*遍历打印所有像素点到LCD */{ temp = p[t];for(tbit = 0; tbit < 8; tbit++)/* 打印一个像素点到液晶 */{u16 color;if(temp & 0x80)color = POINT_COLOR;else if(0 == mode)color = BACK_COLOR;else color = ~POINT_COLOR;TFT_DrawPoint(x, y,color );temp <<= 1;y++;if(y >= LCD_HEIGHT) return;/* 超区域了 */if((y - y0) == fh){y = y0;x++;if(x >= LCD_WIDTH)return;/* 超区域了 */break;}} } }//m^n函数u32 mypow(u8 m,u8 n){u32 result=1;while(n--)result*=m;return result;}//显示数字//x,y :起点坐标//len :数字的位数//fw:字宽//fh:字高//num:数值(0~4294967295);void TFT_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 fw,u8 fh){u8 t,temp;u8 enshow=0;for(t=0; t<len; t++){temp=(num/mypow(10,len-t-1))%10;if(enshow==0&&t<(len-1)){if(temp==0){TFT_ShowChar(x+(fw)*t,y,' ',fw,fh,0);continue;}elseenshow=1;}TFT_ShowChar(x+(fw)*t,y,temp+'0',fw,fh,0);}}//在指定位置开始显示一个字符串//支持自动换行//(x,y):起始坐标//width,height:区域//str :字符串//fw:字宽//fh:字高//mode:0,非叠加方式;1,叠加方式void TFT_ShowString(u16 x,u16 y,char *str,u8 fw,u8 fh,u8 mode){while((*str<='~')&&(*str>=' '))//判断是不是非法字符!{if(x>(LCD_WIDTH-(fw))) {x=0;y+=fh;}if(y>(LCD_HEIGHT-fh)) {y=x=0; //TFT_Clear();}TFT_ShowChar(x,y,*str,fw,fh,mode);x+=fw;str++;}}//显示一个指定大小的汉字//x,y :汉字的坐标//font:汉字GBK码//fw:字宽//fh:字高//mode:0,正常显示,1,叠加显示void TFT_ShowFont(u8 x,u8 y,char *font,u8 fw,u8 fh,u8 mode){const char* font_table;uint16_t fontSeq;uint8_t temp,t,t1;uint16_t y0=y;uint8_t csize=(fh/8+((fh%8)?1:0))*fw;//得到自由分辨字符所占的字节数if(fw==12 && fh==12)font_table = font1212_table;else if(fw==24 && fh==24)font_table = font2424_table;else return;/*没有的字库*/for(fontSeq=0; fontSeq<strlen(font_table)/2; fontSeq++)/*计算font_table对应字库的数组下标*/{if(font_table[2*fontSeq]==font[0] && font_table[2*fontSeq+1]==font[1])break;}if(fontSeq >= strlen(font_table)/2) return;/*font_table中没有font该字*/for(t=0; t<csize; t++){if(fw==12 && fh==12)temp = font_1212[fontSeq][t];/*调用font_1212字库*/else if(fw==24 && fh==24)temp = font_2424[fontSeq][t];/*调用font_2424字库*/for(t1=0; t1<8; t1++){u16 color;if(temp & 0x80)color = POINT_COLOR;else if(0 == mode)color = BACK_COLOR;else color = ~POINT_COLOR;TFT_DrawPoint(x, y,color );temp<<=1;y++;if((y-y0)==fh){y=y0;x++;break;}}}}void TFT_ShowText(u16 x,u16 y,char *str,u8 fw,u8 fh,u8 mode){while(*str!=0){TFT_ShowFont(x,y,str,fw,fh,mode); //显示这个汉字,空心显示str+=2;x+=fh;//下一个汉字偏移}}//显示图片//x,y:起点坐标//pw:图片宽(单位像素)//ph:图片高(单位像素)//p:图片起始地址void TFT_ShowPicture(u16 x,u16 y,const u8 *p,u8 pw,u8 ph){u8 temp,i,col,row;u8 y0=y;u8 width=pw;if(x+pw>LCD_WIDTH)width=LCD_WIDTH-pw;//实际显示宽度u8 high=ph;if(y+ph>LCD_HEIGHT)high=LCD_HEIGHT-ph;//实际显示高度u8 exp_col_bytes=(ph/8+((ph%8)?1:0));//显示一行的字节数u8 act_col_bytes=(high/8+((high%8)?1:0));//实际显示一列的字节数for(row=0; row<width; row++) //列++{for(col=0; col<act_col_bytes; col++) //显示一列{temp = p[col+row*exp_col_bytes];for(i=0; i<8; i++){u16 color;if(temp & 0x80)color = POINT_COLOR;else color = BACK_COLOR;TFT_DrawPoint(x, y,color );temp<<=1;y++;if((y-y0)==high){y=y0;x++;break;}}}}}//初始化ST7789VWvoid TFT_Configuration(void){#ifndef USE_SW_SPISPI1_ChangeMode(SPI_MODE_TFT);#endifTFT_Gpio_Configuration();Delay_ms(100);/* Sleep Out */TFT_WriteByte(0x11,TFT_CMD);/* wait for power stability */Delay_ms(120);/* Memory Data Access Control */TFT_WriteByte(0x36,TFT_CMD);if(USE_HORIZONTAL==0)TFT_WriteByte(0x00,TFT_DATA);else if(USE_HORIZONTAL==1)TFT_WriteByte(0xC0,TFT_DATA);else if(USE_HORIZONTAL==2)TFT_WriteByte(0x70,TFT_DATA);else TFT_WriteByte(0xA0,TFT_DATA);/* RGB 5-6-5-bit */TFT_WriteByte(0x3A,TFT_CMD);TFT_WriteByte(0x65,TFT_DATA);/* Porch Setting */TFT_WriteByte(0xB2,TFT_CMD);TFT_WriteByte(0x0C,TFT_DATA);TFT_WriteByte(0x0C,TFT_DATA);TFT_WriteByte(0x00,TFT_DATA);TFT_WriteByte(0x33,TFT_DATA);TFT_WriteByte(0x33,TFT_DATA);/* Gate Control */TFT_WriteByte(0xB7,TFT_CMD);TFT_WriteByte(0x72,TFT_DATA);/* VCOM Setting */TFT_WriteByte(0xBB,TFT_CMD);TFT_WriteByte(0x3D,TFT_DATA); //Vcom=1.625V/* LCM Control */TFT_WriteByte(0xC0,TFT_CMD);TFT_WriteByte(0x2C,TFT_DATA);/* VDV and VRH Command Enable */TFT_WriteByte(0xC2,TFT_CMD);TFT_WriteByte(0x01,TFT_DATA);/* VRH Set */TFT_WriteByte(0xC3,TFT_CMD);TFT_WriteByte(0x19,TFT_DATA);/* VDV Set */TFT_WriteByte(0xC4,TFT_CMD);TFT_WriteByte(0x20,TFT_DATA);/* Frame Rate Control in Normal Mode */TFT_WriteByte(0xC6,TFT_CMD);TFT_WriteByte(0x0F,TFT_DATA);//60MHZ/* Power Control 1 */TFT_WriteByte(0xD0,TFT_CMD);TFT_WriteByte(0xA4,TFT_DATA);TFT_WriteByte(0xA1,TFT_DATA);/* Positive Voltage Gamma Control */TFT_WriteByte(0xE0,TFT_CMD);TFT_WriteByte(0xD0,TFT_DATA);TFT_WriteByte(0x04,TFT_DATA);TFT_WriteByte(0x0D,TFT_DATA);TFT_WriteByte(0x11,TFT_DATA);TFT_WriteByte(0x13,TFT_DATA);TFT_WriteByte(0x2B,TFT_DATA);TFT_WriteByte(0x3F,TFT_DATA);TFT_WriteByte(0x54,TFT_DATA);TFT_WriteByte(0x4C,TFT_DATA);TFT_WriteByte(0x18,TFT_DATA);TFT_WriteByte(0x0D,TFT_DATA);TFT_WriteByte(0x0B,TFT_DATA);TFT_WriteByte(0x1F,TFT_DATA);TFT_WriteByte(0x23,TFT_DATA);/* Negative Voltage Gamma Control */TFT_WriteByte(0xE1,TFT_CMD);TFT_WriteByte(0xD0,TFT_DATA);TFT_WriteByte(0x04,TFT_DATA);TFT_WriteByte(0x0C,TFT_DATA);TFT_WriteByte(0x11,TFT_DATA);TFT_WriteByte(0x13,TFT_DATA);TFT_WriteByte(0x2C,TFT_DATA);TFT_WriteByte(0x3F,TFT_DATA);TFT_WriteByte(0x44,TFT_DATA);TFT_WriteByte(0x51,TFT_DATA);TFT_WriteByte(0x2F,TFT_DATA);TFT_WriteByte(0x1F,TFT_DATA);TFT_WriteByte(0x1F,TFT_DATA);TFT_WriteByte(0x20,TFT_DATA);TFT_WriteByte(0x23,TFT_DATA);/* Display Inversion On */TFT_WriteByte(0x21,TFT_CMD);TFT_WriteByte(0x29,TFT_CMD);TFT_Clear(BACK_COLOR);}/*********************************************END OF FILE**********************************************/

TFT.h文件:

#ifndef __FY_TFT_H#define __FY_TFT_H#include "fy_includes.h"//#define USE_SW_SPI#ifndef USE_SW_SPI#define TFT_ReadWriteByte SPI1_ReadWriteByte#endif#define USE_HORIZONTAL 0 //设置横屏或者竖屏显示 0或1为竖屏 2或3为横屏#if USE_HORIZONTAL==0||USE_HORIZONTAL==1#define LCD_WIDTH 240#define LCD_HEIGHT 240#else#define LCD_WIDTH 240#define LCD_HEIGHT 240#endif#define TFT_SCLK_RCC RCC_APB2Periph_GPIOA#define TFT_SCLK_PORT GPIOA#define TFT_SCLK_PIN GPIO_Pin_5#define TFT_SCLK_Clr() GPIO_ResetBits(GPIOA,GPIO_Pin_5)#define TFT_SCLK_Set() GPIO_SetBits(GPIOA,GPIO_Pin_5)#define TFT_SDIN_RCC RCC_APB2Periph_GPIOA#define TFT_SDIN_PORT GPIOA#define TFT_SDIN_PIN GPIO_Pin_7#define TFT_SDIN_Clr() GPIO_ResetBits(GPIOA,GPIO_Pin_7)//DIN#define TFT_SDIN_Set() GPIO_SetBits(GPIOA,GPIO_Pin_7)#define TFT_DC_RCC RCC_APB2Periph_GPIOB#define TFT_DC_PORT GPIOB#define TFT_DC_PIN GPIO_Pin_7#define TFT_DC_H() GPIO_SetBits(GPIOB,GPIO_Pin_7)#define TFT_DC_L() GPIO_ResetBits(GPIOB,GPIO_Pin_7)#define TFT_BLK_RCC RCC_APB2Periph_GPIOB#define TFT_BLK_PORT GPIOB#define TFT_BLK_PIN GPIO_Pin_8#define TFT_BLK_H() GPIO_SetBits(GPIOB,GPIO_Pin_8)#define TFT_BLK_L() GPIO_ResetBits(GPIOB,GPIO_Pin_8)extern u16 BACK_COLOR;extern u16 POINT_COLOR;#define TFT_COLOR_RED0xF800#define TFT_COLOR_GREEN0x07E0#define TFT_COLOR_BLUE0x001F#define TFT_COLOR_BLACK0x0000#define TFT_COLOR_WHITE0xFFFF#define TFT_COLOR_YELLOW 0xFFE0void TFT_Configuration(void);void TFT_DisplayOn(void);void TFT_DisplayOff(void);void TFT_Clear(u16 color);void TFT_DrawPoint(u16 x,u16 y,u16 color);void TFT_Fill(u16 x1,u16 y1,u16 x2,u16 y2,u16 color);void TFT_ShowChar(u16 x,u16 y,u8 chr,u8 fw,u8 fh,u8 mode);void TFT_ShowString(u16 x,u16 y,char *str,u8 fw,u8 fh,u8 mode);void TFT_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 fw,u8 fh);void TFT_ShowText(u16 x,u16 y,char *str,u8 fw,u8 fh,u8 mode);void TFT_ShowPicture(u16 x,u16 y,const u8 *p,u8 pw,u8 ph);#endif/*********************************************END OF FILE**********************************************/

关于SPI,源码支持硬件SPI及软件模拟SPI,默认是硬件SPI,需要软件模拟在TFT.H里面打开宏定义就好了,

SPI.C

#include "fy_spi.h"SPI_InitTypeDef SPI_InitStructure;void SPI1_Configuration(void){GPIO_InitTypeDef GPIO_InitStructure;//SPI1的时钟来源是APB2 72MHzRCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_SPI1, ENABLE);//使能GPIOA、SPI1时钟GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//PA5~7复用功能输出GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIO_SetBits(GPIOA,GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);//这里只针对SPI口初始化SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; //设置SPI单向或者双向的数据模式:SPI设置为双线双向全双工SPI_InitStructure.SPI_Mode = SPI_Mode_Master;//设置SPI工作模式:设置为主SPISPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;//设置SPI的数据大小:SPI发送接收8位帧结构SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;//串行同步时钟的空闲状态为低电平SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;//串行同步时钟的第一个跳变沿(上升或下降)数据被采样SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;//NSS信号由硬件(NSS管脚)还是软件(使用SSI位)管理:内部NSS信号有SSI位控制SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//定义波特率预分频的值:波特率预分频值为SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;//指定数据传输从MSB位还是LSB位开始:数据传输从MSB位开始SPI_InitStructure.SPI_CRCPolynomial = 7;//CRC值计算的多项式SPI_Init(SPI1, &SPI_InitStructure); //根据SPI_InitStruct中指定的参数初始化外设SPIx寄存器SPI_Cmd(SPI1, ENABLE); //使能SPI外设SPI1_ReadWriteByte(0xff);//启动传输}//SPI1速度设置函数//SPI速度=fAPB2/分频系数//@ref SPI_BaudRate_Prescaler:SPI_BaudRatePrescaler_2~SPI_BaudRatePrescaler_256//fAPB2时钟一般为84Mhz:void SPI1_SetSpeed(u8 SPI_BaudRatePrescaler){assert_param(IS_SPI_BAUDRATE_PRESCALER(SPI_BaudRatePrescaler));//判断有效性SPI1->CR1&=0XFFC7;//位3-5清零,用来设置波特率SPI1->CR1|=SPI_BaudRatePrescaler;//设置SPI1速度SPI_Cmd(SPI1,ENABLE); //使能SPI1}//SPIx 读写一个字节//TxData:要写入的字节//返回值:读取到的字节u8 SPI1_ReadWriteByte(u8 TxData){u8 retry=0;while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET) //检查指定的SPI标志位设置与否:发送缓存空标志位{retry++;if(retry>200)return 0;}SPI_I2S_SendData(SPI1, TxData); //通过外设SPIx发送一个数据retry=0;while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET)//检查指定的SPI标志位设置与否:接受缓存非空标志位{retry++;if(retry>200)return 0;}return SPI_I2S_ReceiveData(SPI1); //返回通过SPIx最近接收的数据}void SPI1_ChangeMode(_typdef_spi_mode mode){static _typdef_spi_mode last_mode=SPI_MODE_NRF24L01;if(mode == last_mode)return;last_mode = mode;if(mode == SPI_MODE_NRF24L01) {SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//9M}else if(mode == SPI_MODE_LT8920){SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//9M}else if(mode == SPI_MODE_FLASH){SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;//36M}else if(mode == SPI_MODE_OLED){SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;//36M}else if(mode == SPI_MODE_TFT){SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;//36M}elsereturn;SPI_Cmd(SPI1, DISABLE);SPI_Init(SPI1, &SPI_InitStructure);SPI_Cmd(SPI1, ENABLE);}/*********************************************END OF FILE********************************************/

SPI.H

#ifndef __FY_SPI_H#define __FY_SPI_H#include "fy_includes.h" typedef enum{SPI_MODE_NRF24L01=0,SPI_MODE_FLASH,SPI_MODE_OLED,SPI_MODE_TFT,SPI_MODE_LT8920,_SPI_MODE_MAX}_typdef_spi_mode;void SPI1_Configuration(void); //初始化SPI口void SPI1_SetSpeed(u8 SpeedSet); //设置SPI速度 u8 SPI1_ReadWriteByte(u8 TxData);//SPI总线读写一个字节void SPI1_ChangeMode(_typdef_spi_mode mode);#endif

还有就是字库文件、图片等,这里为了方便就没有存外部的flash,直接用单片机内部的flash,

FONT.C文件

#include "fy_oledfont.h"//PC2LCD2002取模方式设置:阴码+逐列式+顺向+C51格式//06*08==宽*高 ASCII字符集点阵 (Terminal Greek8字体)const unsigned char asc2_0608[95][6]= {{0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/{0x00,0x00,0x60,0xFA,0x60,0x00},/*"!",1*/{0x00,0xE0,0xC0,0x00,0xE0,0xC0},/*""",2*/{0x00,0x24,0x7E,0x24,0x7E,0x24},/*"#",3*/{0x00,0x24,0xD4,0x56,0x48,0x00},/*"$",4*/{0x00,0xC6,0xC8,0x10,0x26,0xC6},/*"%",5*/{0x00,0x6C,0x92,0x6A,0x04,0x0A},/*"&",6*/{0x00,0x00,0xE0,0xC0,0x00,0x00},/*"'",7*/{0x00,0x00,0x7C,0x82,0x00,0x00},/*"(",8*/{0x00,0x00,0x82,0x7C,0x00,0x00},/*")",9*/{0x00,0x10,0x7C,0x38,0x7C,0x10},/*"*",10*/{0x00,0x10,0x10,0x7C,0x10,0x10},/*"+",11*/{0x00,0x00,0x07,0x06,0x00,0x00},/*",",12*/{0x00,0x10,0x10,0x10,0x10,0x10},/*"-",13*/{0x00,0x00,0x06,0x06,0x00,0x00},/*".",14*/{0x00,0x04,0x08,0x10,0x20,0x40},/*"/",15*/{0x00,0x7C,0x8A,0x92,0xA2,0x7C},/*"0",16*/{0x00,0x00,0x42,0xFE,0x02,0x00},/*"1",17*/{0x00,0x46,0x8A,0x92,0x92,0x62},/*"2",18*/{0x00,0x44,0x92,0x92,0x92,0x6C},/*"3",19*/{0x00,0x18,0x28,0x48,0xFE,0x08},/*"4",20*/{0x00,0xF4,0x92,0x92,0x92,0x8C},/*"5",21*/{0x00,0x3C,0x52,0x92,0x92,0x0C},/*"6",22*/{0x00,0x80,0x8E,0x90,0xA0,0xC0},/*"7",23*/{0x00,0x6C,0x92,0x92,0x92,0x6C},/*"8",24*/{0x00,0x60,0x92,0x92,0x94,0x78},/*"9",25*/{0x00,0x00,0x36,0x36,0x00,0x00},/*":",26*/{0x00,0x00,0x37,0x36,0x00,0x00},/*";",27*/{0x00,0x10,0x28,0x44,0x82,0x00},/*"<",28*/{0x00,0x24,0x24,0x24,0x24,0x24},/*"=",29*/{0x00,0x00,0x82,0x44,0x28,0x10},/*">",30*/{0x00,0x40,0x80,0x9A,0x90,0x60},/*"?",31*/{0x00,0x7C,0x82,0xBA,0xAA,0x78},/*"@",32*/{0x00,0x7E,0x88,0x88,0x88,0x7E},/*"A",33*/{0x00,0xFE,0x92,0x92,0x92,0x6C},/*"B",34*/{0x00,0x7C,0x82,0x82,0x82,0x44},/*"C",35*/{0x00,0xFE,0x82,0x82,0x82,0x7C},/*"D",36*/{0x00,0xFE,0x92,0x92,0x92,0x82},/*"E",37*/{0x00,0xFE,0x90,0x90,0x90,0x80},/*"F",38*/{0x00,0x7C,0x82,0x92,0x92,0x5E},/*"G",39*/{0x00,0xFE,0x10,0x10,0x10,0xFE},/*"H",40*/{0x00,0x00,0x82,0xFE,0x82,0x00},/*"I",41*/{0x00,0x0C,0x02,0x02,0x02,0xFC},/*"J",42*/{0x00,0xFE,0x10,0x28,0x44,0x82},/*"K",43*/{0x00,0xFE,0x02,0x02,0x02,0x02},/*"L",44*/{0x00,0xFE,0x40,0x20,0x40,0xFE},/*"M",45*/{0x00,0xFE,0x40,0x20,0x10,0xFE},/*"N",46*/{0x00,0x7C,0x82,0x82,0x82,0x7C},/*"O",47*/{0x00,0xFE,0x90,0x90,0x90,0x60},/*"P",48*/{0x00,0x7C,0x82,0x8A,0x84,0x7A},/*"Q",49*/{0x00,0xFE,0x90,0x90,0x98,0x66},/*"R",50*/{0x00,0x64,0x92,0x92,0x92,0x4C},/*"S",51*/{0x00,0x80,0x80,0xFE,0x80,0x80},/*"T",52*/{0x00,0xFC,0x02,0x02,0x02,0xFC},/*"U",53*/{0x00,0xF8,0x04,0x02,0x04,0xF8},/*"V",54*/{0x00,0xFC,0x02,0x3C,0x02,0xFC},/*"W",55*/{0x00,0xC6,0x28,0x10,0x28,0xC6},/*"X",56*/{0x00,0xE0,0x10,0x0E,0x10,0xE0},/*"Y",57*/{0x00,0x8E,0x92,0xA2,0xC2,0x00},/*"Z",58*/{0x00,0x00,0xFE,0x82,0x82,0x00},/*"[",59*/{0x00,0x40,0x20,0x10,0x08,0x04},/*"\",60*/{0x00,0x00,0x82,0x82,0xFE,0x00},/*"]",61*/{0x00,0x20,0x40,0x80,0x40,0x20},/*"^",62*/{0x01,0x01,0x01,0x01,0x01,0x01},/*"_",63*/{0x00,0x00,0xC0,0xE0,0x00,0x00},/*"`",64*/{0x00,0x04,0x2A,0x2A,0x2A,0x1E},/*"a",65*/{0x00,0xFE,0x22,0x22,0x22,0x1C},/*"b",66*/{0x00,0x1C,0x22,0x22,0x22,0x14},/*"c",67*/{0x00,0x1C,0x22,0x22,0x22,0xFE},/*"d",68*/{0x00,0x1C,0x2A,0x2A,0x2A,0x10},/*"e",69*/{0x00,0x10,0x7E,0x90,0x90,0x00},/*"f",70*/{0x00,0x18,0x25,0x25,0x25,0x3E},/*"g",71*/{0x00,0xFE,0x20,0x20,0x1E,0x00},/*"h",72*/{0x00,0x00,0x00,0xBE,0x02,0x00},/*"i",73*/{0x00,0x02,0x01,0x21,0xBE,0x00},/*"j",74*/{0x00,0xFE,0x08,0x14,0x22,0x00},/*"k",75*/{0x00,0x00,0x00,0xFE,0x02,0x00},/*"l",76*/{0x00,0x3E,0x20,0x18,0x20,0x1E},/*"m",77*/{0x00,0x3E,0x20,0x20,0x1E,0x00},/*"n",78*/{0x00,0x1C,0x22,0x22,0x22,0x1C},/*"o",79*/{0x00,0x3F,0x22,0x22,0x22,0x1C},/*"p",80*/{0x00,0x1C,0x22,0x22,0x22,0x3F},/*"q",81*/{0x00,0x22,0x1E,0x22,0x20,0x10},/*"r",82*/{0x00,0x10,0x2A,0x2A,0x2A,0x04},/*"s",83*/{0x00,0x20,0x7C,0x22,0x24,0x00},/*"t",84*/{0x00,0x3C,0x02,0x04,0x3E,0x00},/*"u",85*/{0x00,0x38,0x04,0x02,0x04,0x38},/*"v",86*/{0x00,0x3C,0x06,0x0C,0x06,0x3C},/*"w",87*/{0x00,0x36,0x08,0x08,0x36,0x00},/*"x",88*/{0x00,0x39,0x05,0x06,0x3C,0x00},/*"y",89*/{0x00,0x26,0x2A,0x2A,0x32,0x00},/*"z",90*/{0x00,0x10,0x7C,0x82,0x82,0x00},/*"{",91*/{0x00,0x00,0x00,0xEE,0x00,0x00},/*"|",92*/{0x00,0x00,0x82,0x82,0x7C,0x10},/*"}",93*/{0x00,0x40,0x80,0x40,0x80,0x00},/*"~",94*/};//06*12==宽*高 ASCII字符集点阵 (宋体)const unsigned char asc2_0612[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*/};const unsigned char asc2_0816[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,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/{0x00,0x00,0x08,0x00,0x30,0x00,0x40,0x00,0x08,0x00,0x30,0x00,0x40,0x00,0x00,0x00},/*""",2*/{0x00,0x00,0x02,0x20,0x03,0xFC,0x1E,0x20,0x02,0x20,0x03,0xFC,0x1E,0x20,0x00,0x00},/*"#",3*/{0x00,0x00,0x0E,0x18,0x11,0x04,0x11,0x04,0x3F,0xFF,0x10,0x84,0x0C,0x78,0x00,0x00},/*"$",4*/{0x0F,0x00,0x10,0x8C,0x0F,0x30,0x01,0xC0,0x06,0x78,0x18,0x84,0x00,0x78,0x00,0x00},/*"%",5*/{0x00,0x78,0x0F,0x84,0x10,0xC4,0x11,0x34,0x0E,0x98,0x00,0xE4,0x00,0x84,0x00,0x08},/*"&",6*/{0x00,0x00,0x48,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,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x07,0xF0,0x00,0x80,0x00,0x80,0x00,0x80},/*"+",11*/{0x00,0x00,0x00,0x09,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,0x00},/*"-",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,0xE0,0x03,0x00,0x1C,0x00,0x20,0x00,0x00,0x00},/*"/",15*/{0x00,0x00,0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"0",16*/{0x00,0x00,0x00,0x00,0x08,0x04,0x08,0x04,0x1F,0xFC,0x00,0x04,0x00,0x04,0x00,0x00},/*"1",17*/{0x00,0x00,0x0E,0x0C,0x10,0x14,0x10,0x24,0x10,0x44,0x10,0x84,0x0F,0x0C,0x00,0x00},/*"2",18*/{0x00,0x00,0x0C,0x18,0x10,0x04,0x10,0x84,0x10,0x84,0x11,0x44,0x0E,0x38,0x00,0x00},/*"3",19*/{0x00,0x00,0x00,0x60,0x01,0xA0,0x02,0x24,0x0C,0x24,0x1F,0xFC,0x00,0x24,0x00,0x24},/*"4",20*/{0x00,0x00,0x1F,0x98,0x11,0x04,0x11,0x04,0x11,0x04,0x10,0x88,0x10,0x70,0x00,0x00},/*"5",21*/{0x00,0x00,0x07,0xF0,0x08,0x88,0x11,0x04,0x11,0x04,0x09,0x04,0x00,0xF8,0x00,0x00},/*"6",22*/{0x00,0x00,0x18,0x00,0x10,0x00,0x10,0x7C,0x11,0x80,0x16,0x00,0x18,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,0x0F,0x80,0x10,0x48,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,0x00,0x01,0x07,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*/{0x00,0x00,0x02,0x40,0x02,0x40,0x02,0x40,0x02,0x40,0x02,0x40,0x02,0x40,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,0xEC,0x11,0x00,0x0E,0x00,0x00,0x00},/*"?",31*/{0x03,0xE0,0x0C,0x18,0x13,0xE4,0x14,0x14,0x17,0xF4,0x08,0x14,0x07,0xE8,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,0x80,0x00,0x7C,0x1F,0x80,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,0x08,0x10,0x14,0x10,0x14,0x10,0x0C,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*/{0x10,0x00,0x1F,0xC0,0x00,0x7C,0x1F,0x80,0x00,0x7C,0x1F,0xC0,0x10,0x00,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,0x20,0x00,0x1C,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,0x20,0x00,0x00,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,0x24,0x01,0x48,0x00,0xFC,0x00,0x04,0x00,0x00},/*"a",65*/{0x08,0x00,0x0F,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,0xF8,0x01,0x04,0x01,0x04,0x01,0x04,0x09,0x08,0x0F,0xFC,0x00,0x04},/*"d",68*/{0x00,0x00,0x00,0xF8,0x01,0x24,0x01,0x24,0x01,0x24,0x01,0x24,0x00,0xE8,0x00,0x00},/*"e",69*/{0x00,0x00,0x01,0x04,0x01,0x04,0x07,0xFC,0x09,0x04,0x09,0x04,0x04,0x00,0x00,0x00},/*"f",70*/{0x00,0x00,0x00,0xD6,0x01,0x29,0x01,0x29,0x01,0x29,0x01,0xC9,0x01,0x06,0x00,0x00},/*"g",71*/{0x08,0x04,0x0F,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*/{0x08,0x04,0x0F,0xFC,0x00,0x24,0x00,0x60,0x01,0x94,0x01,0x0C,0x01,0x04,0x00,0x00},/*"k",75*/{0x00,0x00,0x08,0x04,0x08,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,0x89,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x70,0x00,0x00},/*"p",80*/{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x00,0x89,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,0x08,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,0xC0,0x01,0x30,0x00,0x0C,0x01,0x30,0x01,0xC0,0x01,0x00,0x00,0x00},/*"v",86*/{0x01,0x80,0x01,0x70,0x00,0x0C,0x01,0x30,0x01,0xE0,0x00,0x1C,0x01,0x60,0x01,0x80},/*"w",87*/{0x00,0x00,0x01,0x04,0x01,0x8C,0x01,0x70,0x00,0x74,0x01,0x8C,0x01,0x04,0x00,0x00},/*"x",88*/{0x01,0x00,0x01,0x81,0x01,0x61,0x00,0x1E,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,0x00,0x80,0x3F,0x7C,0x40,0x02,0x40,0x02},/*"{",91*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/{0x40,0x02,0x40,0x02,0x3F,0x7C,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00} /*"}",93*/};//12*24==宽*高 ASCII字符集点阵 (宋体)const unsigned char asc2_1224[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*/};const unsigned char font_1212[][24] = {{0x00,0x10,0x04,0x10,0x38,0x20,0x00,0xC0,0x03,0x00,0xFC,0x00,0x03,0x00,0x00,0xC0,0x08,0x20,0x30,0x10,0x00,0x10,0x00,0x00},/*"火",0*/{0x00,0x90,0xFB,0x10,0xA9,0x50,0xA9,0x50,0xA9,0x50,0xAF,0xF0,0xA9,0x50,0xA9,0x50,0xA9,0x50,0xF9,0x10,0x00,0x10,0x00,0x00},/*"星",1*/{0x48,0x80,0x4B,0x00,0x7F,0xF0,0x8A,0x00,0x09,0x00,0x48,0x80,0x24,0x80,0x00,0x80,0xFF,0xF0,0x01,0x00,0x01,0x00,0x00,0x00},/*"科",2*/{0x11,0x00,0x11,0x10,0xFF,0xF0,0x12,0x00,0x24,0x10,0x27,0x10,0x24,0xA0,0xFC,0x40,0x24,0xA0,0x27,0x10,0x20,0x10,0x00,0x00},/*"技",3*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",4*/};const char* font1212_table = {"火星科技 "};const unsigned char font_2424[][72] = {{0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x02,0x00,0x08,0x04,0x00,0x18,0x04,0x00,0x70,0x08,0x01,0x80,0x08,0x00,0x00,0x10,0x00,0x00,0x60,0x00,0x00,0xC0,0x00,0x07,0x80,0x7F,0xFE,0x00,0x3F,0xE0,0x00,0x00,0x18,0x00,0x00,0x0E,0x00,0x00,0x11,0x80,0x00,0x20,0xC0,0x00,0x40,0x60,0x01,0x80,0x30,0x01,0x00,0x18,0x00,0x00,0x0C,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00},/*"火",0*/{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x44,0x00,0x00,0x84,0x00,0x03,0x04,0x3F,0xCE,0x44,0x3F,0x9C,0x44,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0xBF,0xFC,0x24,0x9F,0xFC,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0x84,0x44,0x24,0x84,0xC4,0x3F,0xCC,0x44,0x00,0x04,0x04,0x00,0x00,0x0C,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00},/*"星",1*/{0x00,0x00,0x00,0x00,0x80,0x20,0x00,0x80,0x40,0x10,0x81,0x80,0x10,0x86,0x00,0x10,0x9C,0x00,0x1F,0xFF,0xFF,0x1F,0xFF,0xFE,0x20,0x88,0x00,0x20,0x8C,0x00,0x20,0x86,0x40,0x00,0x00,0x80,0x00,0x00,0x80,0x04,0x30,0x80,0x06,0x1E,0x80,0x02,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x7F,0xFF,0xFF,0x20,0x01,0x00,0x00,0x02,0x00,0x00,0x06,0x00,0x00,0x02,0x00,0x00,0x00,0x00},/*"科",2*/{0x00,0x00,0x00,0x02,0x04,0x00,0x02,0x06,0x08,0x02,0x04,0x04,0x02,0x08,0x04,0x7F,0xFF,0xFE,0x3F,0xFF,0xFC,0x02,0x10,0x00,0x02,0x10,0x02,0x02,0x20,0x02,0x02,0x10,0x04,0x02,0x10,0x04,0x02,0x1C,0x08,0x02,0x13,0x08,0x02,0x10,0xD0,0x7F,0xF0,0x20,0x22,0x10,0x70,0x02,0x11,0xD8,0x02,0x17,0x0C,0x02,0x1C,0x0C,0x02,0x10,0x06,0x02,0x00,0x04,0x00,0x00,0x04,0x00,0x00,0x00},/*"技",3*/{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,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},/*" ",4*/};const char* font2424_table = {"火星科技 "};const unsigned char bmp_logo[]= {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0xFE,0x00,0x00,0x03,0xFE,0x00,0x00,0x0F,0xFE,0x00,0x00,0x1F,0xFE,0x00,0x00,0x7F,0xFE,0x00,0x01,0xFF,0xFE,0x00,0x07,0xFF,0xFE,0x00,0x0F,0xFF,0xFC,0x00,0x3F,0xFF,0xF8,0x00,0xFF,0xFF,0xE0,0x01,0xFF,0xFF,0x80,0x07,0xFF,0xFF,0x00,0x0F,0xFF,0xFC,0x00,0x1F,0xFF,0xF0,0x00,0x3F,0xFF,0xC0,0x00,0x3F,0xFF,0x80,0x00,0x3F,0xFE,0x00,0x00,0x3F,0xFC,0x00,0x00,0x3F,0xF0,0x00,0x00,0x3F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x3F,0x80,0x00,0x00,0x3F,0xE0,0x00,0x00,0x3F,0xF0,0x00,0x00,0x3F,0xFC,0x00,0x00,0x3F,0xFF,0x00,0x00,0x3F,0xFF,0x80,0x00,0x3F,0xFF,0xE0,0x00,0x3F,0xFF,0xF8,0x00,0x0F,0xFF,0xFE,0x00,0x07,0xFF,0xFF,0x00,0x31,0xFF,0xFF,0xC0,0x30,0x7F,0xFF,0xF0,0x3C,0x1F,0xFF,0xF8,0x3F,0x0F,0xFF,0xFE,0x3F,0x83,0xFF,0xFE,0x3F,0xE0,0xFF,0xFE,0x3F,0xF8,0x7F,0xFE,0x3F,0xFE,0x1F,0xFE,0x1F,0xFF,0x07,0xFE,0x0F,0xFF,0xC3,0xFE,0x03,0xFF,0xF0,0xFE,0x30,0xFF,0xF8,0x3E,0x38,0x3F,0xFE,0x0E,0x3C,0x1F,0xFF,0x86,0x3E,0x07,0xFF,0xC0,0x3E,0x01,0xFF,0xF0,0x3E,0x00,0xFF,0xFC,0x3E,0x00,0x3F,0xFE,0x3E,0x06,0x0F,0xFE,0x3E,0x07,0x87,0xFE,0x3E,0x07,0xC1,0xFE,0x3E,0x07,0xC0,0x7E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x0E,0x3E,0x07,0xC0,0x06,0x3F,0x87,0xC0,0x00,0x3F,0xC7,0xC0,0x00,0x3F,0xF7,0xC0,0x00,0x3F,0xFF,0xC0,0x30,0x3F,0xFF,0xC0,0x38,0x0F,0xFF,0xC0,0x3E,0x03,0xFF,0xE0,0x3E,0x31,0xFF,0xF8,0x3E,0x38,0x7F,0xFC,0x3E,0x3C,0x1F,0xFF,0x3E,0x3E,0x0F,0xFF,0xBE,0x3E,0x03,0xFF,0xBE,0x3E,0x00,0xFF,0xBE,0x3E,0x00,0x7F,0xBE,0x3E,0x07,0x1F,0xBE,0x3E,0x07,0x87,0xBE,0x3E,0x07,0xC1,0xBE,0x3E,0x07,0xC1,0xBE,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xE0,0x3E,0x3F,0x87,0xF8,0x3E,0x3F,0xE7,0xFC,0x3E,0x3F,0xF7,0xFF,0x3E,0x3F,0xFF,0xFF,0xBE,0x3F,0xFF,0xFF,0xBE,0x0F,0xFF,0xFF,0xBE,0x03,0xFF,0xFF,0xBE,0x31,0xFF,0xFF,0xBE,0x30,0x7F,0xDF,0xBE,0x3C,0x1F,0xC7,0xBE,0x3E,0x0F,0xC1,0xBE,0x3E,0x03,0xC0,0xBE,0x3E,0x00,0xC0,0x3E,0x3E,0x00,0x00,0x3E,0x3E,0x06,0x00,0x3E,0x3E,0x07,0x00,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x3E,0x07,0xC0,0x3E,0x1E,0x07,0xC0,0x3E,0x0E,0x07,0xC0,0x3E,0x0E,0x07,0xC0,0x3E,0x00,0x07,0xF0,0x3E,0x00,0x07,0xFC,0x3E,0x00,0x07,0xFF,0x3E,0x00,0x07,0xFF,0xBE,0x00,0x03,0xFF,0xFE,0x00,0x01,0xFF,0xFE,0x00,0x00,0x7F,0xFE,0x00,0x00,0x1F,0xFE,0x00,0x00,0x0F,0xFE,0x00,0x00,0x03,0xFE,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,};/*********************************************END OF FILE**********************************************/

FONT.H文件

#ifndef __FY_OLEDFONT_H#define __FY_OLEDFONT_Hextern const unsigned char asc2_0608[95][6];extern const unsigned char asc2_0612[95][12];extern const unsigned char asc2_0816[95][16];extern const unsigned char asc2_1224[95][36];extern const unsigned char font_1212[][24];extern const unsigned char font_2424[][72];extern const char* font1212_table;extern const char* font2424_table;extern const unsigned char bmp_logo[];#endif/*********************************************END OF FILE**********************************************/

By Urien 4月6日 17:44:05

如果觉得《【单片机笔记】分享关于STM32 SPI驱动ST7789 LCD ISP TFT液晶屏幕》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。