驱动来源参考反客STM32H723ZGT6核心板
lcd_spi_169.h
#ifndef __spi_lcd
#define __spi_lcd
#include "stm32h7xx_hal.h"
#include "stdio.h"
#include "usart.h"
#include "spi.h"
#include "lcd_fonts.h" // 图片和字库文件不是必须,用户可自行删减
#include "lcd_image.h"
/*----------------------------------------------- 参数宏 -------------------------------------------*/
#define LCD_Width 240 // LCD的像素长度
#define LCD_Height 280 // LCD的像素宽度
// 显示方向参数
// 使用示例:LCD_DisplayDirection(Direction_H) 设置屏幕横屏显示
#define Direction_H 0 //LCD横屏显示
#define Direction_H_Flip 1 //LCD横屏显示,上下翻转
#define Direction_V 2 //LCD竖屏显示
#define Direction_V_Flip 3 //LCD竖屏显示,上下翻转
// 设置变量显示时多余位补0还是补空格
// 只有 LCD_DisplayNumber() 显示整数 和 LCD_DisplayDecimals()显示小数 这两个函数用到
// 使用示例: LCD_ShowNumMode(Fill_Zero) 设置多余位填充0,例如 123 可以显示为 000123
#define Fill_Zero 0 //填充0
#define Fill_Space 1 //填充空格
/*---------------------------------------- 常用颜色 ------------------------------------------------------
1. 这里为了方便用户使用,定义的是24位 RGB888颜色,然后再通过代码自动转换成 16位 RGB565 的颜色
2. 24位的颜色中,从高位到低位分别对应 R、G、B 3个颜色通道
3. 用户可以在电脑用调色板获取24位RGB颜色,再将颜色输入LCD_SetColor()或LCD_SetBackColor()就可以显示出相应的颜色
*/
#define LCD_WHITE 0xFFFFFF // 纯白色
#define LCD_BLACK 0x000000 // 纯黑色
#define LCD_BLUE 0x0000FF // 纯蓝色
#define LCD_GREEN 0x00FF00 // 纯绿色
#define LCD_RED 0xFF0000 // 纯红色
#define LCD_CYAN 0x00FFFF // 蓝绿色
#define LCD_MAGENTA 0xFF00FF // 紫红色
#define LCD_YELLOW 0xFFFF00 // 黄色
#define LCD_Y 0xffF6E58D
#define LCD_GREY 0x2C2C2C // 灰色
#define LIGHT_BLUE 0x8080FF // 亮蓝色
#define LIGHT_GREEN 0x80FF80 // 亮绿色
#define LIGHT_RED 0xFF8080 // 亮红色
#define LIGHT_CYAN 0x80FFFF // 亮蓝绿色
#define LIGHT_MAGENTA 0xFF80FF // 亮紫红色
#define LIGHT_YELLOW 0xFFFF80 // 亮黄色
#define LIGHT_GREY 0xA3A3A3 // 亮灰色
#define DARK_BLUE 0x000080 // 暗蓝色
#define DARK_GREEN 0x008000 // 暗绿色
#define DARK_RED 0x800000 // 暗红色
#define DARK_CYAN 0x008080 // 暗蓝绿色
#define DARK_MAGENTA 0x800080 // 暗紫红色
#define DARK_YELLOW 0x808000 // 暗黄色
#define DARK_GREY 0x404040 // 暗灰色
/*------------------------------------------------ 函数声明 ----------------------------------------------*/
void SPI_LCD_Init(void); // 液晶屏以及SPI初始化
void LCD_Clear(void); // 清屏函数
void LCD_ClearRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height); // 局部清屏函数
void LCD_SetAddress(uint16_t x1,uint16_t y1,uint16_t x2,uint16_t y2); // 设置坐标
void LCD_SetColor(uint32_t Color); // 设置画笔颜色
void LCD_SetBackColor(uint32_t Color); // 设置背景颜色
void LCD_SetDirection(uint8_t direction); // 设置显示方向
//>>>>> 显示ASCII字符
void LCD_SetAsciiFont(pFONT *fonts); // 设置ASCII字体
void LCD_DisplayChar(uint16_t x, uint16_t y,uint8_t c); // 显示单个ASCII字符
void LCD_DisplayString( uint16_t x, uint16_t y, char *p); // 显示ASCII字符串
//>>>>> 显示中文字符,包括ASCII码
void LCD_SetTextFont(pFONT *fonts); // 设置文本字体,包括中文和ASCII字体
void LCD_DisplayChinese(uint16_t x, uint16_t y, char *pText); // 显示单个汉字
void LCD_DisplayText(uint16_t x, uint16_t y, char *pText) ; // 显示字符串,包括中文和ASCII字符
//>>>>> 显示整数或小数
void LCD_ShowNumMode(uint8_t mode); // 设置变量显示模式,多余位填充空格还是填充0
void LCD_DisplayNumber( uint16_t x, uint16_t y, int32_t number,uint8_t len) ; // 显示整数
void LCD_DisplayDecimals( uint16_t x, uint16_t y, double number,uint8_t len,uint8_t decs); // 显示小数
//>>>>> 2D图形函数
void LCD_DrawPoint(uint16_t x,uint16_t y,uint32_t color); //画点
void LCD_DrawLine_V(uint16_t x, uint16_t y, uint16_t height); // 画垂直线
void LCD_DrawLine_H(uint16_t x, uint16_t y, uint16_t width); // 画水平线
void LCD_DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); // 两点之间画线
void LCD_DrawRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height); //画矩形
void LCD_DrawCircle(uint16_t x, uint16_t y, uint16_t r); //画圆
void LCD_DrawEllipse(int x, int y, int r1, int r2); //画椭圆
//>>>>> 区域填充函数
void LCD_FillRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height); //填充矩形
void LCD_FillCircle(uint16_t x, uint16_t y, uint16_t r); //填充圆
//>>>>> 绘制单色图片
void LCD_DrawImage(uint16_t x,uint16_t y,uint16_t width,uint16_t height,const uint8_t *pImage) ;
//>>>>> 批量复制函数,直接将数据复制到屏幕的显存
void LCD_CopyBuffer(uint16_t x, uint16_t y,uint16_t width,uint16_t height,uint16_t *DataBuff);
/*--------------------------------------------- LCD其它引脚 -----------------------------------------------*/
#define LCD_Backlight_PIN LCD_BL_Pin // 背光 引脚
#define LCD_Backlight_PORT LCD_BL_GPIO_Port // 背光 GPIO端口
#define GPIO_LDC_Backlight_CLK_ENABLE __HAL_RCC_GPIOG_CLK_ENABLE() // 背光 GPIO时钟
#define LCD_Backlight_OFF HAL_GPIO_WritePin(LCD_Backlight_PORT, LCD_Backlight_PIN, GPIO_PIN_RESET); // 低电平,关闭背光
#define LCD_Backlight_ON HAL_GPIO_WritePin(LCD_Backlight_PORT, LCD_Backlight_PIN, GPIO_PIN_SET); // 高电平,开启背光
#define LCD_DC_PIN LCD_DC_Pin // 数据指令选择 引脚
#define LCD_DC_PORT LCD_DC_GPIO_Port // 数据指令选择 GPIO端口
#define GPIO_LDC_DC_CLK_ENABLE __HAL_RCC_GPIOG_CLK_ENABLE() // 数据指令选择 GPIO时钟
#define LCD_DC_Command HAL_GPIO_WritePin(LCD_DC_PORT, LCD_DC_PIN, GPIO_PIN_RESET); // 低电平,指令传输
#define LCD_DC_Data HAL_GPIO_WritePin(LCD_DC_PORT, LCD_DC_PIN, GPIO_PIN_SET); // 高电平,数据传输
#endif //__spi_lcd
lcd_spi_169.c
#include "lcd_spi_169.h"
#define LCD_SPI hspi4 // SPI局部宏,方便修改和移植
static pFONT *LCD_AsciiFonts; // 英文字体,ASCII字符集
static pFONT *LCD_CHFonts; // 中文字体(同时也包含英文字体)
// 因为这类SPI的屏幕,每次更新显示时,需要先配置坐标区域、再写显存,
// 在显示字符时,如果是一个个点去写坐标写显存,会非常慢,
// 因此开辟一片缓冲区,先将需要显示的数据写进缓冲区,最后再批量写入显存。
// 用户可以根据实际情况去修改此处缓冲区的大小,
// 例如,用户需要显示32*32的汉字时,需要的大小为 32*32*2 = 2048 字节(每个像素点占2字节)
uint16_t LCD_Buff[1024]; // LCD缓冲区,16位宽(每个像素点占2字节)
struct //LCD相关参数结构体
{
uint32_t Color; // LCD当前画笔颜色
uint32_t BackColor; // 背景色
uint8_t ShowNum_Mode; // 数字显示模式
uint8_t Direction; // 显示方向
uint16_t Width; // 屏幕像素长度
uint16_t Height; // 屏幕像素宽度
uint8_t X_Offset; // X坐标偏移,用于设置屏幕控制器的显存写入方式
uint8_t Y_Offset; // Y坐标偏移,用于设置屏幕控制器的显存写入方式
}LCD;
// 该函数修改于HAL的SPI库函数,专为 LCD_Clear() 清屏函数修改,
// 目的是为了SPI传输数据不限数据长度的写入
HAL_StatusTypeDef LCD_SPI_Transmit(SPI_HandleTypeDef *hspi, uint16_t pData, uint32_t Size);
HAL_StatusTypeDef LCD_SPI_TransmitBuffer (SPI_HandleTypeDef *hspi, uint16_t *pData, uint32_t Size);
/*****************************************************************************************
* 函 数 名: LCD_WriteCMD
* 入口参数: CMD - 需要写入的控制指令
* 返 回 值: 无
* 函数功能: 用于写入控制字
* 说 明: 无
******************************************************************************************/
void LCD_WriteCommand(uint8_t lcd_command)
{
LCD_DC_Command; // 数据指令选择 引脚输出低电平,代表本次传输 指令
HAL_SPI_Transmit(&LCD_SPI, &lcd_command, 1, 1000) ;
}
/****************************************************************************************************************************************
* 函 数 名: LCD_WriteData_8bit
*
* 入口参数: lcd_data - 需要写入的数据,8位
*
* 函数功能: 写入8位数据
*
****************************************************************************************************************************************/
void LCD_WriteData_8bit(uint8_t lcd_data)
{
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
HAL_SPI_Transmit(&LCD_SPI, &lcd_data, 1, 1000) ; // 启动SPI传输
}
/****************************************************************************************************************************************
* 函 数 名: LCD_WriteData_16bit
*
* 入口参数: lcd_data - 需要写入的数据,16位
*
* 函数功能: 写入16位数据
*
****************************************************************************************************************************************/
void LCD_WriteData_16bit(uint16_t lcd_data)
{
uint8_t lcd_data_buff[2]; // 数据发送区
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
//将数据拆分
lcd_data_buff[0] = lcd_data>>8; //高字节
lcd_data_buff[1] = lcd_data; //低字节
HAL_SPI_Transmit(&LCD_SPI, lcd_data_buff, 2, 1000) ; // 启动SPI传输
}
/****************************************************************************************************************************************
* 函 数 名: LCD_WriteBuff
*
* 入口参数: DataBuff - 数据区,DataSize - 数据长度
*
* 函数功能: 批量写入数据到屏幕
*
****************************************************************************************************************************************/
void LCD_WriteBuff(uint16_t *DataBuff, uint16_t DataSize)
{
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
// 修改为16位数据宽度,写入数据更加效率,不需要拆分
LCD_SPI.Init.DataSize = SPI_DATASIZE_16BIT; // 16位数据宽度
HAL_SPI_Init(&LCD_SPI);
HAL_SPI_Transmit(&LCD_SPI, (uint8_t *)DataBuff, DataSize, 1000) ; // 启动SPI传输
// 改回8位数据宽度,因为指令和部分数据都是按照8位传输的
LCD_SPI.Init.DataSize = SPI_DATASIZE_8BIT; // 8位数据宽度
HAL_SPI_Init(&LCD_SPI);
}
/****************************************************************************************************************************************
* 函 数 名: SPI_LCD_Init
*
* 函数功能: 初始化SPI以及屏幕控制器的各种参数
*
****************************************************************************************************************************************/
void SPI_LCD_Init(void)
{
// MX_SPI4_Init(); // 初始化SPI和控制引脚
HAL_Delay(10); // 屏幕刚完成复位时(包括上电复位),需要等待5ms才能发送指令
LCD_WriteCommand(0x36); // 显存访问控制 指令,用于设置访问显存的方式
LCD_WriteData_8bit(0x00); // 配置成 从上到下、从左到右,RGB像素格式
LCD_WriteCommand(0x3A); // 接口像素格式 指令,用于设置使用 12位、16位还是18位色
LCD_WriteData_8bit(0x05); // 此处配置成 16位 像素格式
// 接下来很多都是电压设置指令,直接使用厂家给设定值
LCD_WriteCommand(0xB2);
LCD_WriteData_8bit(0x0C);
LCD_WriteData_8bit(0x0C);
LCD_WriteData_8bit(0x00);
LCD_WriteData_8bit(0x33);
LCD_WriteData_8bit(0x33);
LCD_WriteCommand(0xB7); // 栅极电压设置指令
LCD_WriteData_8bit(0x35); // VGH = 13.26V,VGL = -10.43V
LCD_WriteCommand(0xBB); // 公共电压设置指令
LCD_WriteData_8bit(0x19); // VCOM = 1.35V
LCD_WriteCommand(0xC0);
LCD_WriteData_8bit(0x2C);
LCD_WriteCommand(0xC2); // VDV 和 VRH 来源设置
LCD_WriteData_8bit(0x01); // VDV 和 VRH 由用户自由配置
LCD_WriteCommand(0xC3); // VRH电压 设置指令
LCD_WriteData_8bit(0x12); // VRH电压 = 4.6+( vcom+vcom offset+vdv)
LCD_WriteCommand(0xC4); // VDV电压 设置指令
LCD_WriteData_8bit(0x20); // VDV电压 = 0v
LCD_WriteCommand(0xC6); // 正常模式的帧率控制指令
LCD_WriteData_8bit(0x0F); // 设置屏幕控制器的刷新帧率为60帧
LCD_WriteCommand(0xD0); // 电源控制指令
LCD_WriteData_8bit(0xA4); // 无效数据,固定写入0xA4
LCD_WriteData_8bit(0xA1); // AVDD = 6.8V ,AVDD = -4.8V ,VDS = 2.3V
LCD_WriteCommand(0xE0); // 正极电压伽马值设定
LCD_WriteData_8bit(0xD0);
LCD_WriteData_8bit(0x04);
LCD_WriteData_8bit(0x0D);
LCD_WriteData_8bit(0x11);
LCD_WriteData_8bit(0x13);
LCD_WriteData_8bit(0x2B);
LCD_WriteData_8bit(0x3F);
LCD_WriteData_8bit(0x54);
LCD_WriteData_8bit(0x4C);
LCD_WriteData_8bit(0x18);
LCD_WriteData_8bit(0x0D);
LCD_WriteData_8bit(0x0B);
LCD_WriteData_8bit(0x1F);
LCD_WriteData_8bit(0x23);
LCD_WriteCommand(0xE1); // 负极电压伽马值设定
LCD_WriteData_8bit(0xD0);
LCD_WriteData_8bit(0x04);
LCD_WriteData_8bit(0x0C);
LCD_WriteData_8bit(0x11);
LCD_WriteData_8bit(0x13);
LCD_WriteData_8bit(0x2C);
LCD_WriteData_8bit(0x3F);
LCD_WriteData_8bit(0x44);
LCD_WriteData_8bit(0x51);
LCD_WriteData_8bit(0x2F);
LCD_WriteData_8bit(0x1F);
LCD_WriteData_8bit(0x1F);
LCD_WriteData_8bit(0x20);
LCD_WriteData_8bit(0x23);
LCD_WriteCommand(0x21); // 打开反显,因为面板是常黑型,操作需要反过来
// 退出休眠指令,LCD控制器在刚上电、复位时,会自动进入休眠模式 ,因此操作屏幕之前,需要退出休眠
LCD_WriteCommand(0x11); // 退出休眠 指令
HAL_Delay(120); // 需要等待120ms,让电源电压和时钟电路稳定下来
// 打开显示指令,LCD控制器在刚上电、复位时,会自动关闭显示
LCD_WriteCommand(0x29); // 打开显示
// 以下进行一些驱动的默认设置
LCD_SetDirection(Direction_H_Flip); // 设置显示方向
LCD_SetBackColor(LCD_BLACK); // 设置背景色
LCD_SetColor(LCD_WHITE); // 设置画笔色
LCD_Clear(); // 清屏
LCD_SetAsciiFont(&ASCII_Font24); // 设置默认字体
LCD_ShowNumMode(Fill_Zero); // 设置变量显示模式,多余位填充空格还是填充0
// 全部设置完毕之后,打开背光
LCD_Backlight_ON; // 引脚输出高电平点亮背光
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetAddress
*
* 入口参数: x1 - 起始水平坐标 y1 - 起始垂直坐标
* x2 - 终点水平坐标 y2 - 终点垂直坐标
*
* 函数功能: 设置需要显示的坐标区域
*****************************************************************************************************************************************/
void LCD_SetAddress(uint16_t x1,uint16_t y1,uint16_t x2,uint16_t y2)
{
LCD_WriteCommand(0x2a); // 列地址设置,即X坐标
LCD_WriteData_16bit(x1+LCD.X_Offset);
LCD_WriteData_16bit(x2+LCD.X_Offset);
LCD_WriteCommand(0x2b); // 行地址设置,即Y坐标
LCD_WriteData_16bit(y1+LCD.Y_Offset);
LCD_WriteData_16bit(y2+LCD.Y_Offset);
LCD_WriteCommand(0x2c); // 开始写入显存,即要显示的颜色数据
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetColor
*
* 入口参数: Color - 要显示的颜色,示例:0x0000FF 表示蓝色
*
* 函数功能: 此函数用于设置画笔的颜色,例如显示字符、画点画线、绘图的颜色
*
* 说 明: 1. 为了方便用户使用自定义颜色,入口参数 Color 使用24位 RGB888的颜色格式,用户无需关心颜色格式的转换
* 2. 24位的颜色中,从高位到低位分别对应 R、G、B 3个颜色通道
*
*****************************************************************************************************************************************/
void LCD_SetColor(uint32_t Color)
{
uint16_t Red_Value = 0, Green_Value = 0, Blue_Value = 0; //各个颜色通道的值
Red_Value = (uint16_t)((Color&0x00F80000)>>8); // 转换成 16位 的RGB565颜色
Green_Value = (uint16_t)((Color&0x0000FC00)>>5);
Blue_Value = (uint16_t)((Color&0x000000F8)>>3);
LCD.Color = (uint16_t)(Red_Value | Green_Value | Blue_Value); // 将颜色写入全局LCD参数
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetBackColor
*
* 入口参数: Color - 要显示的颜色,示例:0x0000FF 表示蓝色
*
* 函数功能: 设置背景色,此函数用于清屏以及显示字符的背景色
*
* 说 明: 1. 为了方便用户使用自定义颜色,入口参数 Color 使用24位 RGB888的颜色格式,用户无需关心颜色格式的转换
* 2. 24位的颜色中,从高位到低位分别对应 R、G、B 3个颜色通道
*
*****************************************************************************************************************************************/
void LCD_SetBackColor(uint32_t Color)
{
uint16_t Red_Value = 0, Green_Value = 0, Blue_Value = 0; //各个颜色通道的值
Red_Value = (uint16_t)((Color&0x00F80000)>>8); // 转换成 16位 的RGB565颜色
Green_Value = (uint16_t)((Color&0x0000FC00)>>5);
Blue_Value = (uint16_t)((Color&0x000000F8)>>3);
LCD.BackColor = (uint16_t)(Red_Value | Green_Value | Blue_Value); // 将颜色写入全局LCD参数
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetDirection
*
* 入口参数: direction - 要显示的方向
*
* 函数功能: 设置要显示的方向
*
* 说 明: 1. 可输入参数 Direction_H 、Direction_V 、Direction_H_Flip 、Direction_V_Flip
* 2. 使用示例 LCD_DisplayDirection(Direction_H) ,即设置屏幕横屏显示
*
*****************************************************************************************************************************************/
void LCD_SetDirection(uint8_t direction)
{
LCD.Direction = direction; // 写入全局LCD参数
if( direction == Direction_H ) // 横屏显示
{
LCD_WriteCommand(0x36); // 显存访问控制 指令,用于设置访问显存的方式
LCD_WriteData_8bit(0x70); // 横屏显示
LCD.X_Offset = 20; // 设置控制器坐标偏移量
LCD.Y_Offset = 0;
LCD.Width = LCD_Height; // 重新赋值长、宽
LCD.Height = LCD_Width;
}
else if( direction == Direction_V )
{
LCD_WriteCommand(0x36); // 显存访问控制 指令,用于设置访问显存的方式
LCD_WriteData_8bit(0x00); // 垂直显示
LCD.X_Offset = 0; // 设置控制器坐标偏移量
LCD.Y_Offset = 20;
LCD.Width = LCD_Width; // 重新赋值长、宽
LCD.Height = LCD_Height;
}
else if( direction == Direction_H_Flip )
{
LCD_WriteCommand(0x36); // 显存访问控制 指令,用于设置访问显存的方式
LCD_WriteData_8bit(0xA0); // 横屏显示,并上下翻转,RGB像素格式
LCD.X_Offset = 20; // 设置控制器坐标偏移量
LCD.Y_Offset = 0;
LCD.Width = LCD_Height; // 重新赋值长、宽
LCD.Height = LCD_Width;
}
else if( direction == Direction_V_Flip )
{
LCD_WriteCommand(0x36); // 显存访问控制 指令,用于设置访问显存的方式
LCD_WriteData_8bit(0xC0); // 垂直显示 ,并上下翻转,RGB像素格式
LCD.X_Offset = 0; // 设置控制器坐标偏移量
LCD.Y_Offset = 20;
LCD.Width = LCD_Width; // 重新赋值长、宽
LCD.Height = LCD_Height;
}
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetAsciiFont
*
* 入口参数: *fonts - 要设置的ASCII字体
*
* 函数功能: 设置ASCII字体,可选择使用 3216/2412/2010/1608/1206 五种大小的字体
*
* 说 明: 1. 使用示例 LCD_SetAsciiFont(&ASCII_Font24) ,即设置 2412的 ASCII字体
* 2. 相关字模存放在 lcd_fonts.c
*
*****************************************************************************************************************************************/
void LCD_SetAsciiFont(pFONT *Asciifonts)
{
LCD_AsciiFonts = Asciifonts;
}
/****************************************************************************************************************************************
* 函 数 名: LCD_Clear
*
* 函数功能: 清屏函数,将LCD清除为 LCD.BackColor 的颜色
*
* 说 明: 先用 LCD_SetBackColor() 设置要清除的背景色,再调用该函数清屏即可
*
*****************************************************************************************************************************************/
void LCD_Clear(void)
{
LCD_SetAddress(0,0,LCD.Width-1,LCD.Height-1); // 设置坐标
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
// 修改为16位数据宽度,写入数据更加效率,不需要拆分
LCD_SPI.Init.DataSize = SPI_DATASIZE_16BIT; // 16位数据宽度
HAL_SPI_Init(&LCD_SPI);
LCD_SPI_Transmit(&LCD_SPI, LCD.BackColor, LCD.Width * LCD.Height) ; // 启动传输
// 改回8位数据宽度,因为指令和部分数据都是按照8位传输的
LCD_SPI.Init.DataSize = SPI_DATASIZE_8BIT; // 8位数据宽度
HAL_SPI_Init(&LCD_SPI);
}
/****************************************************************************************************************************************
* 函 数 名: LCD_ClearRect
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* width - 要清除区域的横向长度
* height - 要清除区域的纵向宽度
*
* 函数功能: 局部清屏函数,将指定位置对应的区域清除为 LCD.BackColor 的颜色
*
* 说 明: 1. 先用 LCD_SetBackColor() 设置要清除的背景色,再调用该函数清屏即可
* 2. 使用示例 LCD_ClearRect( 10, 10, 100, 50) ,清除坐标(10,10)开始的长100宽50的区域
*
*****************************************************************************************************************************************/
void LCD_ClearRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height)
{
LCD_SetAddress( x, y, x+width-1, y+height-1); // 设置坐标
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
// 修改为16位数据宽度,写入数据更加效率,不需要拆分
LCD_SPI.Init.DataSize = SPI_DATASIZE_16BIT; // 16位数据宽度
HAL_SPI_Init(&LCD_SPI);
LCD_SPI_Transmit(&LCD_SPI, LCD.BackColor, width*height) ; // 启动传输
// 改回8位数据宽度,因为指令和部分数据都是按照8位传输的
LCD_SPI.Init.DataSize = SPI_DATASIZE_8BIT; // 8位数据宽度
HAL_SPI_Init(&LCD_SPI);
}
/****************************************************************************************************************************************
* 函 数 名: LCD_DrawPoint
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* color - 要绘制的颜色,使用 24位 RGB888 的颜色格式,用户无需关心颜色格式的转换
*
* 函数功能: 在指定坐标绘制指定颜色的点
*
* 说 明: 使用示例 LCD_DrawPoint( 10, 10, 0x0000FF) ,在坐标(10,10)绘制蓝色的点
*
*****************************************************************************************************************************************/
void LCD_DrawPoint(uint16_t x,uint16_t y,uint32_t color)
{
LCD_SetAddress(x,y,x,y); // 设置坐标
LCD_WriteData_16bit(color) ;
}
/****************************************************************************************************************************************
* 函 数 名: LCD_DisplayChar
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* c - ASCII字符
*
* 函数功能: 在指定坐标显示指定的字符
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetAsciiFont(&ASCII_Font24) 设置为 2412的ASCII字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0xff0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0x000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayChar( 10, 10, 'a') ,在坐标(10,10)显示字符 'a'
*
*****************************************************************************************************************************************/
void LCD_DisplayChar(uint16_t x, uint16_t y,uint8_t c)
{
uint16_t index = 0, counter = 0 ,i = 0, w = 0; // 计数变量
uint8_t disChar; //存储字符的地址
c = c - 32; // 计算ASCII字符的偏移
for(index = 0; index < LCD_AsciiFonts->Sizes; index++)
{
disChar = LCD_AsciiFonts->pTable[c*LCD_AsciiFonts->Sizes + index]; //获取字符的模值
for(counter = 0; counter < 8; counter++)
{
if(disChar & 0x01)
{
LCD_Buff[i] = LCD.Color; // 当前模值不为0时,使用画笔色绘点
}
else
{
LCD_Buff[i] = LCD.BackColor; //否则使用背景色绘制点
}
disChar >>= 1;
i++;
w++;
if( w == LCD_AsciiFonts->Width ) // 如果写入的数据达到了字符宽度,则退出当前循环
{ // 进入下一字符的写入的绘制
w = 0;
break;
}
}
}
LCD_SetAddress( x, y, x+LCD_AsciiFonts->Width-1, y+LCD_AsciiFonts->Height-1); // 设置坐标
LCD_WriteBuff(LCD_Buff,LCD_AsciiFonts->Width*LCD_AsciiFonts->Height); // 写入显存
}
/****************************************************************************************************************************************
* 函 数 名: LCD_DisplayString
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* p - ASCII字符串的首地址
*
* 函数功能: 在指定坐标显示指定的字符串
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetAsciiFont(&ASCII_Font24) 设置为 2412的ASCII字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0x0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0x000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayString( 10, 10, "FANKE") ,在起始坐标为(10,10)的地方显示字符串"FANKE"
*
*****************************************************************************************************************************************/
void LCD_DisplayString( uint16_t x, uint16_t y, char *p)
{
while ((x < LCD.Width) && (*p != 0)) //判断显示坐标是否超出显示区域并且字符是否为空字符
{
LCD_DisplayChar( x,y,*p);
x += LCD_AsciiFonts->Width; //显示下一个字符
p++; //取下一个字符地址
}
}
/****************************************************************************************************************************************
* 函 数 名: LCD_SetTextFont
*
* 入口参数: *fonts - 要设置的文本字体
*
* 函数功能: 设置文本字体,包括中文和ASCII字符,
*
* 说 明: 1. 可选择使用 3232/2424/2020/1616/1212 五种大小的中文字体,
* 并且对应的设置ASCII字体为 3216/2412/2010/1608/1206
* 2. 相关字模存放在 lcd_fonts.c
* 3. 中文字库使用的是小字库,即用到了对应的汉字再去取模
* 4. 使用示例 LCD_SetTextFont(&CH_Font24) ,即设置 2424的中文字体以及2412的ASCII字符字体
*
*****************************************************************************************************************************************/
void LCD_SetTextFont(pFONT *fonts)
{
LCD_CHFonts = fonts; // 设置中文字体
switch(fonts->Width )
{
case 12: LCD_AsciiFonts = &ASCII_Font12; break; // 设置ASCII字符的字体为 1206
case 16: LCD_AsciiFonts = &ASCII_Font16; break; // 设置ASCII字符的字体为 1608
case 20: LCD_AsciiFonts = &ASCII_Font20; break; // 设置ASCII字符的字体为 2010
case 24: LCD_AsciiFonts = &ASCII_Font24; break; // 设置ASCII字符的字体为 2412
case 32: LCD_AsciiFonts = &ASCII_Font32; break; // 设置ASCII字符的字体为 3216
default: break;
}
}
/******************************************************************************************************************************************
* 函 数 名: LCD_DisplayChinese
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* pText - 中文字符
*
* 函数功能: 在指定坐标显示指定的单个中文字符
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetTextFont(&CH_Font24) 设置为 2424的中文字体以及2412的ASCII字符字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0xff0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0xff000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayChinese( 10, 10, "反") ,在坐标(10,10)显示中文字符"反"
*
*****************************************************************************************************************************************/
void LCD_DisplayChinese(uint16_t x, uint16_t y, char *pText)
{
uint16_t i=0,index = 0, counter = 0; // 计数变量
uint16_t addr; // 字模地址
uint8_t disChar; //字模的值
uint16_t Xaddress = 0; //水平坐标
while(1)
{
// 对比数组中的汉字编码,用以定位该汉字字模的地址
if ( *(LCD_CHFonts->pTable + (i+1)*LCD_CHFonts->Sizes + 0)==*pText && *(LCD_CHFonts->pTable + (i+1)*LCD_CHFonts->Sizes + 1)==*(pText+1) )
{
addr=i; // 字模地址偏移
break;
}
i+=2; // 每个中文字符编码占两字节
if(i >= LCD_CHFonts->Table_Rows) break; // 字模列表中无相应的汉字
}
i=0;
for(index = 0; index <LCD_CHFonts->Sizes; index++)
{
disChar = *(LCD_CHFonts->pTable + (addr)*LCD_CHFonts->Sizes + index); // 获取相应的字模地址
for(counter = 0; counter < 8; counter++)
{
if(disChar & 0x01)
{
LCD_Buff[i] = LCD.Color; // 当前模值不为0时,使用画笔色绘点
}
else
{
LCD_Buff[i] = LCD.BackColor; // 否则使用背景色绘制点
}
i++;
disChar >>= 1;
Xaddress++; //水平坐标自加
if( Xaddress == LCD_CHFonts->Width ) // 如果水平坐标达到了字符宽度,则退出当前循环
{ // 进入下一行的绘制
Xaddress = 0;
break;
}
}
}
LCD_SetAddress( x, y, x+LCD_CHFonts->Width-1, y+LCD_CHFonts->Height-1); // 设置坐标
LCD_WriteBuff(LCD_Buff,LCD_CHFonts->Width*LCD_CHFonts->Height); // 写入显存
}
/*****************************************************************************************************************************************
* 函 数 名: LCD_DisplayText
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* pText - 字符串,可以显示中文或者ASCII字符
*
* 函数功能: 在指定坐标显示指定的字符串
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetTextFont(&CH_Font24) 设置为 2424的中文字体以及2412的ASCII字符字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0xff0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0xff000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayChinese( 10, 10, "反客科技STM32") ,在坐标(10,10)显示字符串"反客科技STM32"
*
**********************************************************************************************************************************fanke*******/
void LCD_DisplayText(uint16_t x, uint16_t y, char *pText)
{
while(*pText != 0) // 判断是否为空字符
{
if(*pText<=0x7F) // 判断是否为ASCII码
{
LCD_DisplayChar(x,y,*pText); // 显示ASCII
x+=LCD_AsciiFonts->Width; // 水平坐标调到下一个字符处
pText++; // 字符串地址+1
}
else // 若字符为汉字
{
LCD_DisplayChinese(x,y,pText); // 显示汉字
x+=LCD_CHFonts->Width; // 水平坐标调到下一个字符处
pText+=2; // 字符串地址+2,汉字的编码要2字节
}
}
}
/*****************************************************************************************************************************************
* 函 数 名: LCD_ShowNumMode
*
* 入口参数: mode - 设置变量的显示模式
*
* 函数功能: 设置变量显示时多余位补0还是补空格,可输入参数 Fill_Space 填充空格,Fill_Zero 填充零
*
* 说 明: 1. 只有 LCD_DisplayNumber() 显示整数 和 LCD_DisplayDecimals()显示小数 这两个函数用到
* 2. 使用示例 LCD_ShowNumMode(Fill_Zero) 设置多余位填充0,例如 123 可以显示为 000123
*
*****************************************************************************************************************************************/
void LCD_ShowNumMode(uint8_t mode)
{
LCD.ShowNum_Mode = mode;
}
/*****************************************************************************************************************************************
* 函 数 名: LCD_DisplayNumber
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* number - 要显示的数字,范围在 -2147483648~2147483647 之间
* len - 数字的位数,如果位数超过len,将按其实际长度输出,如果需要显示负数,请预留一个位的符号显示空间
*
* 函数功能: 在指定坐标显示指定的整数变量
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetAsciiFont(&ASCII_Font24) 设置为的ASCII字符字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0x0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0x000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayNumber( 10, 10, a, 5) ,在坐标(10,10)显示指定变量a,总共5位,多余位补0或空格,
* 例如 a=123 时,会根据 LCD_ShowNumMode()的设置来显示 123(前面两个空格位) 或者00123
*
*****************************************************************************************************************************************/
void LCD_DisplayNumber( uint16_t x, uint16_t y, int32_t number, uint8_t len)
{
char Number_Buffer[15]; // 用于存储转换后的字符串
if( LCD.ShowNum_Mode == Fill_Zero) // 多余位补0
{
sprintf( Number_Buffer , "%0.*d",len, number ); // 将 number 转换成字符串,便于显示
}
else // 多余位补空格
{
sprintf( Number_Buffer , "%*d",len, number ); // 将 number 转换成字符串,便于显示
}
LCD_DisplayString( x, y,(char *)Number_Buffer) ; // 将转换得到的字符串显示出来
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DisplayDecimals
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* decimals - 要显示的数字, double型取值1.7 x 10^(-308)~ 1.7 x 10^(+308),但是能确保准确的有效位数为15~16位
*
* len - 整个变量的总位数(包括小数点和负号),若实际的总位数超过了指定的总位数,将按实际的总长度位输出,
* 示例1:小数 -123.123 ,指定 len <=8 的话,则实际照常输出 -123.123
* 示例2:小数 -123.123 ,指定 len =10 的话,则实际输出 -123.123(负号前面会有两个空格位)
* 示例3:小数 -123.123 ,指定 len =10 的话,当调用函数 LCD_ShowNumMode() 设置为填充0模式时,实际输出 -00123.123
*
* decs - 要保留的小数位数,若小数的实际位数超过了指定的小数位,则按指定的宽度四舍五入输出
* 示例:1.12345 ,指定 decs 为4位的话,则输出结果为1.1235
*
* 函数功能: 在指定坐标显示指定的变量,包括小数
*
* 说 明: 1. 可设置要显示的字体,例如使用 LCD_SetAsciiFont(&ASCII_Font24) 设置为的ASCII字符字体
* 2. 可设置要显示的颜色,例如使用 LCD_SetColor(0x0000FF) 设置为蓝色
* 3. 可设置对应的背景色,例如使用 LCD_SetBackColor(0x000000) 设置为黑色的背景色
* 4. 使用示例 LCD_DisplayDecimals( 10, 10, a, 5, 3) ,在坐标(10,10)显示字变量a,总长度为5位,其中保留3位小数
*
*****************************************************************************************************************************************/
void LCD_DisplayDecimals( uint16_t x, uint16_t y, double decimals, uint8_t len, uint8_t decs)
{
char Number_Buffer[20]; // 用于存储转换后的字符串
if( LCD.ShowNum_Mode == Fill_Zero) // 多余位填充0模式
{
sprintf( Number_Buffer , "%0*.*lf",len,decs, decimals ); // 将 number 转换成字符串,便于显示
}
else // 多余位填充空格
{
sprintf( Number_Buffer , "%*.*lf",len,decs, decimals ); // 将 number 转换成字符串,便于显示
}
LCD_DisplayString( x, y,(char *)Number_Buffer) ; // 将转换得到的字符串显示出来
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawLine
*
* 入口参数: x1 - 起点 水平坐标
* y1 - 起点 垂直坐标
*
* x2 - 终点 水平坐标
* y2 - 终点 垂直坐标
*
* 函数功能: 在两点之间画线
*
* 说 明: 该函数移植于ST官方评估板的例程
*
*****************************************************************************************************************************************/
#define ABS(X) ((X) > 0 ? (X) : -(X))
void LCD_DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2)
{
int16_t deltax = 0, deltay = 0, x = 0, y = 0, xinc1 = 0, xinc2 = 0,
yinc1 = 0, yinc2 = 0, den = 0, num = 0, numadd = 0, numpixels = 0,
curpixel = 0;
deltax = ABS(x2 - x1); /* The difference between the x's */
deltay = ABS(y2 - y1); /* The difference between the y's */
x = x1; /* Start x off at the first pixel */
y = y1; /* Start y off at the first pixel */
if (x2 >= x1) /* The x-values are increasing */
{
xinc1 = 1;
xinc2 = 1;
}
else /* The x-values are decreasing */
{
xinc1 = -1;
xinc2 = -1;
}
if (y2 >= y1) /* The y-values are increasing */
{
yinc1 = 1;
yinc2 = 1;
}
else /* The y-values are decreasing */
{
yinc1 = -1;
yinc2 = -1;
}
if (deltax >= deltay) /* There is at least one x-value for every y-value */
{
xinc1 = 0; /* Don't change the x when numerator >= denominator */
yinc2 = 0; /* Don't change the y for every iteration */
den = deltax;
num = deltax / 2;
numadd = deltay;
numpixels = deltax; /* There are more x-values than y-values */
}
else /* There is at least one y-value for every x-value */
{
xinc2 = 0; /* Don't change the x for every iteration */
yinc1 = 0; /* Don't change the y when numerator >= denominator */
den = deltay;
num = deltay / 2;
numadd = deltax;
numpixels = deltay; /* There are more y-values than x-values */
}
for (curpixel = 0; curpixel <= numpixels; curpixel++)
{
LCD_DrawPoint(x,y,LCD.Color); /* Draw the current pixel */
num += numadd; /* Increase the numerator by the top of the fraction */
if (num >= den) /* Check if numerator >= denominator */
{
num -= den; /* Calculate the new numerator value */
x += xinc1; /* Change the x as appropriate */
y += yinc1; /* Change the y as appropriate */
}
x += xinc2; /* Change the x as appropriate */
y += yinc2; /* Change the y as appropriate */
}
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawLine_V
*
* 入口参数: x - 水平坐标
* y - 垂直坐标
* height - 垂直宽度
*
* 函数功能: 在指点位置绘制指定长宽的 垂直 线
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
* 3. 如果只是画垂直的线,优先使用此函数,速度比 LCD_DrawLine 快很多
* 性能测试:
*****************************************************************************************************************************************/
void LCD_DrawLine_V(uint16_t x, uint16_t y, uint16_t height)
{
uint16_t i ; // 计数变量
for (i = 0; i < height; i++)
{
LCD_Buff[i] = LCD.Color; // 写入缓冲区
}
LCD_SetAddress( x, y, x, y+height-1); // 设置坐标
LCD_WriteBuff(LCD_Buff,height); // 写入显存
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawLine_H
*
* 入口参数: x - 水平坐标
* y - 垂直坐标
* width - 水平宽度
*
* 函数功能: 在指点位置绘制指定长宽的 水平 线
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
* 3. 如果只是画 水平 的线,优先使用此函数,速度比 LCD_DrawLine 快很多
* 性能测试:
**********************************************************************************************************************************fanke*******/
void LCD_DrawLine_H(uint16_t x, uint16_t y, uint16_t width)
{
uint16_t i ; // 计数变量
for (i = 0; i < width; i++)
{
LCD_Buff[i] = LCD.Color; // 写入缓冲区
}
LCD_SetAddress( x, y, x+width-1, y); // 设置坐标
LCD_WriteBuff(LCD_Buff,width); // 写入显存
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawRect
*
* 入口参数: x - 水平坐标
* y - 垂直坐标
* width - 水平宽度
* height - 垂直宽度
*
* 函数功能: 在指点位置绘制指定长宽的矩形线条
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
*
*****************************************************************************************************************************************/
void LCD_DrawRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height)
{
// 绘制水平线
LCD_DrawLine_H( x, y, width);
LCD_DrawLine_H( x, y+height-1, width);
// 绘制垂直线
LCD_DrawLine_V( x, y, height);
LCD_DrawLine_V( x+width-1, y, height);
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawCircle
*
* 入口参数: x - 圆心 水平坐标
* y - 圆心 垂直坐标
* r - 半径
*
* 函数功能: 在坐标 (x,y) 绘制半径为 r 的圆形线条
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
*
*****************************************************************************************************************************************/
void LCD_DrawCircle(uint16_t x, uint16_t y, uint16_t r)
{
int Xadd = -r, Yadd = 0, err = 2-2*r, e2;
do {
LCD_DrawPoint(x-Xadd,y+Yadd,LCD.Color);
LCD_DrawPoint(x+Xadd,y+Yadd,LCD.Color);
LCD_DrawPoint(x+Xadd,y-Yadd,LCD.Color);
LCD_DrawPoint(x-Xadd,y-Yadd,LCD.Color);
e2 = err;
if (e2 <= Yadd) {
err += ++Yadd*2+1;
if (-Xadd == Yadd && e2 <= Xadd) e2 = 0;
}
if (e2 > Xadd) err += ++Xadd*2+1;
}
while (Xadd <= 0);
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawEllipse
*
* 入口参数: x - 圆心 水平坐标
* y - 圆心 垂直坐标
* r1 - 水平半轴的长度
* r2 - 垂直半轴的长度
*
* 函数功能: 在坐标 (x,y) 绘制水平半轴为 r1 垂直半轴为 r2 的椭圆线条
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
*
*****************************************************************************************************************************************/
void LCD_DrawEllipse(int x, int y, int r1, int r2)
{
int Xadd = -r1, Yadd = 0, err = 2-2*r1, e2;
float K = 0, rad1 = 0, rad2 = 0;
rad1 = r1;
rad2 = r2;
if (r1 > r2)
{
do {
K = (float)(rad1/rad2);
LCD_DrawPoint(x-Xadd,y+(uint16_t)(Yadd/K),LCD.Color);
LCD_DrawPoint(x+Xadd,y+(uint16_t)(Yadd/K),LCD.Color);
LCD_DrawPoint(x+Xadd,y-(uint16_t)(Yadd/K),LCD.Color);
LCD_DrawPoint(x-Xadd,y-(uint16_t)(Yadd/K),LCD.Color);
e2 = err;
if (e2 <= Yadd) {
err += ++Yadd*2+1;
if (-Xadd == Yadd && e2 <= Xadd) e2 = 0;
}
if (e2 > Xadd) err += ++Xadd*2+1;
}
while (Xadd <= 0);
}
else
{
Yadd = -r2;
Xadd = 0;
do {
K = (float)(rad2/rad1);
LCD_DrawPoint(x-(uint16_t)(Xadd/K),y+Yadd,LCD.Color);
LCD_DrawPoint(x+(uint16_t)(Xadd/K),y+Yadd,LCD.Color);
LCD_DrawPoint(x+(uint16_t)(Xadd/K),y-Yadd,LCD.Color);
LCD_DrawPoint(x-(uint16_t)(Xadd/K),y-Yadd,LCD.Color);
e2 = err;
if (e2 <= Xadd) {
err += ++Xadd*3+1;
if (-Yadd == Xadd && e2 <= Yadd) e2 = 0;
}
if (e2 > Yadd) err += ++Yadd*3+1;
}
while (Yadd <= 0);
}
}
/***************************************************************************************************************************************
* 函 数 名: LCD_FillCircle
*
* 入口参数: x - 圆心 水平坐标
* y - 圆心 垂直坐标
* r - 半径
*
* 函数功能: 在坐标 (x,y) 填充半径为 r 的圆形区域
*
* 说 明: 1. 该函数移植于ST官方评估板的例程
* 2. 要绘制的区域不能超过屏幕的显示区域
*
*****************************************************************************************************************************************/
void LCD_FillCircle(uint16_t x, uint16_t y, uint16_t r)
{
int32_t D; /* Decision Variable */
uint32_t CurX;/* Current X Value */
uint32_t CurY;/* Current Y Value */
D = 3 - (r << 1);
CurX = 0;
CurY = r;
while (CurX <= CurY)
{
if(CurY > 0)
{
LCD_DrawLine_V(x - CurX, y - CurY,2*CurY);
LCD_DrawLine_V(x + CurX, y - CurY,2*CurY);
}
if(CurX > 0)
{
// LCD_DrawLine(x - CurY, y - CurX,x - CurY,y - CurX + 2*CurX);
// LCD_DrawLine(x + CurY, y - CurX,x + CurY,y - CurX + 2*CurX);
LCD_DrawLine_V(x - CurY, y - CurX,2*CurX);
LCD_DrawLine_V(x + CurY, y - CurX,2*CurX);
}
if (D < 0)
{
D += (CurX << 2) + 6;
}
else
{
D += ((CurX - CurY) << 2) + 10;
CurY--;
}
CurX++;
}
LCD_DrawCircle(x, y, r);
}
/***************************************************************************************************************************************
* 函 数 名: LCD_FillRect
*
* 入口参数: x - 水平坐标
* y - 垂直坐标
* width - 水平宽度
* height -垂直宽度
*
* 函数功能: 在坐标 (x,y) 填充指定长宽的实心矩形
*
* 说 明: 要绘制的区域不能超过屏幕的显示区域
*
*****************************************************************************************************************************************/
void LCD_FillRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height)
{
LCD_SetAddress( x, y, x+width-1, y+height-1); // 设置坐标
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
// 修改为16位数据宽度,写入数据更加效率,不需要拆分
LCD_SPI.Init.DataSize = SPI_DATASIZE_16BIT; // 16位数据宽度
HAL_SPI_Init(&LCD_SPI);
LCD_SPI_Transmit(&LCD_SPI, LCD.Color, width*height) ;
// 改回8位数据宽度,因为指令和部分数据都是按照8位传输的
LCD_SPI.Init.DataSize = SPI_DATASIZE_8BIT; // 8位数据宽度
HAL_SPI_Init(&LCD_SPI);
}
/***************************************************************************************************************************************
* 函 数 名: LCD_DrawImage
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* width - 图片的水平宽度
* height - 图片的垂直宽度
* *pImage - 图片数据存储区的首地址
*
* 函数功能: 在指定坐标处显示图片
*
* 说 明: 1.要显示的图片需要事先进行取模、获悉图片的长度和宽度
* 2.使用 LCD_SetColor() 函数设置画笔色,LCD_SetBackColor() 设置背景色
*
*****************************************************************************************************************************************/
void LCD_DrawImage(uint16_t x,uint16_t y,uint16_t width,uint16_t height,const uint8_t *pImage)
{
uint8_t disChar; // 字模的值
uint16_t Xaddress = x; // 水平坐标
uint16_t Yaddress = y; // 垂直坐标
uint16_t i=0,j=0,m=0; // 计数变量
uint16_t BuffCount = 0; // 缓冲区计数
uint16_t Buff_Height = 0; // 缓冲区的行数
// 因为缓冲区大小有限,需要分多次写入
Buff_Height = (sizeof(LCD_Buff)/2) / height; // 计算缓冲区能够写入图片的多少行
for(i = 0; i <height; i++) // 循环按行写入
{
for(j = 0; j <(float)width/8; j++)
{
disChar = *pImage;
for(m = 0; m < 8; m++)
{
if(disChar & 0x01)
{
LCD_Buff[BuffCount] = LCD.Color; // 当前模值不为0时,使用画笔色绘点
}
else
{
LCD_Buff[BuffCount] = LCD.BackColor; //否则使用背景色绘制点
}
disChar >>= 1; // 模值移位
Xaddress++; // 水平坐标自加
BuffCount++; // 缓冲区计数
if( (Xaddress - x)==width ) // 如果水平坐标达到了字符宽度,则退出当前循环,进入下一行的绘制
{
Xaddress = x;
break;
}
}
pImage++;
}
if( BuffCount == Buff_Height*width ) // 达到缓冲区所能容纳的最大行数时
{
BuffCount = 0; // 缓冲区计数清0
LCD_SetAddress( x, Yaddress , x+width-1, Yaddress+Buff_Height-1); // 设置坐标
LCD_WriteBuff(LCD_Buff,width*Buff_Height); // 写入显存
Yaddress = Yaddress+Buff_Height; // 计算行偏移,开始写入下一部分数据
}
if( (i+1)== height ) // 到了最后一行时
{
LCD_SetAddress( x, Yaddress , x+width-1,i+y); // 设置坐标
LCD_WriteBuff(LCD_Buff,width*(i+1+y-Yaddress)); // 写入显存
}
}
}
/***************************************************************************************************************************************
* 函 数 名: LCD_CopyBuffer
*
* 入口参数: x - 起始水平坐标
* y - 起始垂直坐标
* width - 目标区域的水平宽度
* height - 目标区域的垂直宽度
* *pImage - 数据存储区的首地址
*
* 函数功能: 在指定坐标处,直接将数据复制到屏幕的显存
*
* 说 明: 批量复制函数,可用于移植 LVGL 或者将摄像头采集的图像显示出来
*
*****************************************************************************************************************************************/
void LCD_CopyBuffer(uint16_t x, uint16_t y,uint16_t width,uint16_t height,uint16_t *DataBuff)
{
LCD_SetAddress(x,y,x+width-1,y+height-1);
LCD_DC_Data; // 数据指令选择 引脚输出高电平,代表本次传输 数据
// 修改为16位数据宽度,写入数据更加效率,不需要拆分
LCD_SPI.Init.DataSize = SPI_DATASIZE_16BIT; // 16位数据宽度
HAL_SPI_Init(&LCD_SPI);
LCD_SPI_TransmitBuffer(&LCD_SPI, DataBuff,width * height) ;
// HAL_SPI_Transmit(&hspi5, (uint8_t *)DataBuff, (x2-x1+1) * (y2-y1+1), 1000) ;
// 改回8位数据宽度,因为指令和部分数据都是按照8位传输的
LCD_SPI.Init.DataSize = SPI_DATASIZE_8BIT; // 8位数据宽度
HAL_SPI_Init(&LCD_SPI);
}
/**********************************************************************************************************************************
*
* 以下几个函数修改于HAL的库函数,目的是为了SPI传输数据不用计算偏移以及不限数据长度的写入
*
*****************************************************************************************************************FANKE************/
/**
* @brief Handle SPI Communication Timeout.
* @param hspi: pointer to a SPI_HandleTypeDef structure that contains
* the configuration information for SPI module.
* @param Flag: SPI flag to check
* @param Status: flag state to check
* @param Timeout: Timeout duration
* @param Tickstart: Tick start value
* @retval HAL status
*/
HAL_StatusTypeDef MY_SPI_WaitOnFlagUntilTimeout(SPI_HandleTypeDef *hspi, uint32_t Flag, FlagStatus Status,
uint32_t Tickstart, uint32_t Timeout)
{
/* Wait until flag is set */
while ((__HAL_SPI_GET_FLAG(hspi, Flag) ? SET : RESET) == Status)
{
/* Check for the Timeout */
if ((((HAL_GetTick() - Tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout == 0U))
{
return HAL_TIMEOUT;
}
}
return HAL_OK;
}
/**
* @brief Close Transfer and clear flags.
* @param hspi: pointer to a SPI_HandleTypeDef structure that contains
* the configuration information for SPI module.
* @retval HAL_ERROR: if any error detected
* HAL_OK: if nothing detected
*/
void MY_SPI_CloseTransfer(SPI_HandleTypeDef *hspi)
{
uint32_t itflag = hspi->Instance->SR;
__HAL_SPI_CLEAR_EOTFLAG(hspi);
__HAL_SPI_CLEAR_TXTFFLAG(hspi);
/* Disable SPI peripheral */
__HAL_SPI_DISABLE(hspi);
/* Disable ITs */
__HAL_SPI_DISABLE_IT(hspi, (SPI_IT_EOT | SPI_IT_TXP | SPI_IT_RXP | SPI_IT_DXP | SPI_IT_UDR | SPI_IT_OVR | SPI_IT_FRE | SPI_IT_MODF));
/* Disable Tx DMA Request */
CLEAR_BIT(hspi->Instance->CFG1, SPI_CFG1_TXDMAEN | SPI_CFG1_RXDMAEN);
/* Report UnderRun error for non RX Only communication */
if (hspi->State != HAL_SPI_STATE_BUSY_RX)
{
if ((itflag & SPI_FLAG_UDR) != 0UL)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_UDR);
__HAL_SPI_CLEAR_UDRFLAG(hspi);
}
}
/* Report OverRun error for non TX Only communication */
if (hspi->State != HAL_SPI_STATE_BUSY_TX)
{
if ((itflag & SPI_FLAG_OVR) != 0UL)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_OVR);
__HAL_SPI_CLEAR_OVRFLAG(hspi);
}
}
/* SPI Mode Fault error interrupt occurred -------------------------------*/
if ((itflag & SPI_FLAG_MODF) != 0UL)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_MODF);
__HAL_SPI_CLEAR_MODFFLAG(hspi);
}
/* SPI Frame error interrupt occurred ------------------------------------*/
if ((itflag & SPI_FLAG_FRE) != 0UL)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FRE);
__HAL_SPI_CLEAR_FREFLAG(hspi);
}
hspi->TxXferCount = (uint16_t)0UL;
hspi->RxXferCount = (uint16_t)0UL;
}
/**
* @brief 专为屏幕清屏而修改,将需要清屏的颜色批量传输
* @param hspi : spi的句柄
* @param pData : 要写入的数据
* @param Size : 数据大小
* @retval HAL status
*/
HAL_StatusTypeDef LCD_SPI_Transmit(SPI_HandleTypeDef *hspi, uint16_t pData, uint32_t Size)
{
uint32_t tickstart;
uint32_t Timeout = 1000; // 超时判断
uint32_t LCD_pData_32bit; // 按32位传输时的数据
uint32_t LCD_TxDataCount; // 传输计数
HAL_StatusTypeDef errorcode = HAL_OK;
/* Check Direction parameter */
assert_param(IS_SPI_DIRECTION_2LINES_OR_1LINE_2LINES_TXONLY(hspi->Init.Direction));
/* Process Locked */
__HAL_LOCK(hspi);
/* Init tickstart for timeout management*/
tickstart = HAL_GetTick();
if (hspi->State != HAL_SPI_STATE_READY)
{
errorcode = HAL_BUSY;
__HAL_UNLOCK(hspi);
return errorcode;
}
/* Set the transaction information */
hspi->State = HAL_SPI_STATE_BUSY_TX;
hspi->ErrorCode = HAL_SPI_ERROR_NONE;
// hspi->pTxBuffPtr = (uint8_t *)pData;
hspi->TxXferSize = Size;
hspi->TxXferCount = Size;
LCD_TxDataCount = Size; // 传输的数据长度
LCD_pData_32bit = (pData<<16)|pData ; // 按32位传输时,合并2个像素点的颜色
/*Init field not used in handle to zero */
hspi->pRxBuffPtr = NULL;
hspi->RxXferSize = (uint16_t) 0UL;
hspi->RxXferCount = (uint16_t) 0UL;
hspi->TxISR = NULL;
hspi->RxISR = NULL;
/* Configure communication direction : 1Line */
SPI_1LINE_TX(hspi); // 单线SPI
// 不使用硬件 TSIZE 控制,此处设置为0,即不限制传输的数据长度
MODIFY_REG(hspi->Instance->CR2, SPI_CR2_TSIZE, 0);
/* Enable SPI peripheral */
__HAL_SPI_ENABLE(hspi);
if (hspi->Init.Mode == SPI_MODE_MASTER)
{
/* Master transfer start */
SET_BIT(hspi->Instance->CR1, SPI_CR1_CSTART);
}
/* Transmit data in 16 Bit mode */
/* Transmit data in 16 Bit mode */
while (LCD_TxDataCount > 0UL)
{
/* Wait until TXP flag is set to send data */
if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXP))
{
if ((LCD_TxDataCount > 1UL) && (hspi->Init.FifoThreshold > SPI_FIFO_THRESHOLD_01DATA))
{
*((__IO uint32_t *)&hspi->Instance->TXDR) = (uint32_t )LCD_pData_32bit;
// pData += sizeof(uint32_t);
LCD_TxDataCount -= (uint16_t)2UL;
}
else
{
*((__IO uint16_t *)&hspi->Instance->TXDR) = (uint16_t )pData;
// pData += sizeof(uint16_t);
LCD_TxDataCount--;
}
}
else
{
/* Timeout management */
if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout == 0U))
{
/* Call standard close procedure with error check */
MY_SPI_CloseTransfer(hspi);
/* Process Unlocked */
__HAL_UNLOCK(hspi);
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_TIMEOUT);
hspi->State = HAL_SPI_STATE_READY;
return HAL_ERROR;
}
}
}
if (MY_SPI_WaitOnFlagUntilTimeout(hspi, SPI_SR_TXC, RESET, tickstart, Timeout) != HAL_OK)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
}
SET_BIT((hspi)->Instance->CR1 , SPI_CR1_CSUSP); // 请求挂起SPI传输
/* 等待SPI挂起 */
if (MY_SPI_WaitOnFlagUntilTimeout(hspi, SPI_FLAG_SUSP, RESET, tickstart, Timeout) != HAL_OK)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
}
MY_SPI_CloseTransfer(hspi); /* Call standard close procedure with error check */
SET_BIT((hspi)->Instance->IFCR , SPI_IFCR_SUSPC); // 清除挂起标志位
/* Process Unlocked */
__HAL_UNLOCK(hspi);
hspi->State = HAL_SPI_STATE_READY;
if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
{
return HAL_ERROR;
}
return errorcode;
}
/**
* @brief
* @param hspi : spi的句柄
* @param pData : 要写入的数据
* @param Size : 数据大小
* @retval HAL status
*/
HAL_StatusTypeDef LCD_SPI_TransmitBuffer (SPI_HandleTypeDef *hspi, uint16_t *pData, uint32_t Size)
{
uint32_t tickstart;
uint32_t Timeout = 1000; // 超时判断
__IO uint32_t LCD_TxDataCount; // 传输计数
HAL_StatusTypeDef errorcode = HAL_OK;
/* Check Direction parameter */
assert_param(IS_SPI_DIRECTION_2LINES_OR_1LINE_2LINES_TXONLY(hspi->Init.Direction));
/* Process Locked */
__HAL_LOCK(hspi);
/* Init tickstart for timeout management*/
tickstart = HAL_GetTick();
if (hspi->State != HAL_SPI_STATE_READY)
{
errorcode = HAL_BUSY;
__HAL_UNLOCK(hspi);
return errorcode;
}
/* Set the transaction information */
hspi->State = HAL_SPI_STATE_BUSY_TX;
hspi->ErrorCode = HAL_SPI_ERROR_NONE;
LCD_TxDataCount = Size; // 传输的数据长度
/*Init field not used in handle to zero */
hspi->TxISR = NULL;
hspi->RxISR = NULL;
/* Configure communication direction : 1Line */
SPI_1LINE_TX(hspi); // 单线SPI
// 不使用硬件 TSIZE 控制,此处设置为0,即不限制传输的数据长度
MODIFY_REG(hspi->Instance->CR2, SPI_CR2_TSIZE, 0);
/* Enable SPI peripheral */
__HAL_SPI_ENABLE(hspi);
if (hspi->Init.Mode == SPI_MODE_MASTER)
{
/* Master transfer start */
SET_BIT(hspi->Instance->CR1, SPI_CR1_CSTART);
}
/* Transmit data in 16 Bit mode */
/* Transmit data in 16 Bit mode */
while (LCD_TxDataCount > 0UL)
{
/* Wait until TXP flag is set to send data */
if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXP))
{
if ((LCD_TxDataCount > 1UL) && (hspi->Init.FifoThreshold > SPI_FIFO_THRESHOLD_01DATA))
{
*((__IO uint32_t *)&hspi->Instance->TXDR) = *((uint32_t *)pData);
pData += 2;
LCD_TxDataCount -= 2;
}
else
{
*((__IO uint16_t *)&hspi->Instance->TXDR) = *((uint16_t *)pData);
pData += 1;
LCD_TxDataCount--;
}
}
// else
// {
// /* Timeout management */
// if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout == 0U))
// {
// /* Call standard close procedure with error check */
// MY_SPI_CloseTransfer(hspi);
// /* Process Unlocked */
// __HAL_UNLOCK(hspi);
// SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_TIMEOUT);
// hspi->State = HAL_SPI_STATE_READY;
// return HAL_ERROR;
// }
// }
}
// printf ("%d \r\n",LCD_TxDataCount);
//
if (MY_SPI_WaitOnFlagUntilTimeout(hspi, SPI_SR_TXC, RESET, tickstart, Timeout) != HAL_OK)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
}
SET_BIT((hspi)->Instance->CR1 , SPI_CR1_CSUSP); // 请求挂起SPI传输
/* 等待SPI挂起 */
if (MY_SPI_WaitOnFlagUntilTimeout(hspi, SPI_FLAG_SUSP, RESET, tickstart, Timeout) != HAL_OK)
{
SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
}
MY_SPI_CloseTransfer(hspi); /* Call standard close procedure with error check */
SET_BIT((hspi)->Instance->IFCR , SPI_IFCR_SUSPC); // 清除挂起标志位
/* Process Unlocked */
__HAL_UNLOCK(hspi);
hspi->State = HAL_SPI_STATE_READY;
if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
{
return HAL_ERROR;
}
return errorcode;
}
lcd_fonts.h
#ifndef __FONTS_H
#define __FONTS_H
#include <stdint.h>
// 字体相关结构定义
typedef struct _pFont
{
const uint8_t *pTable; // 字模数组地址
uint16_t Width; // 单个字符的字模宽度
uint16_t Height; // 单个字符的字模长度
uint16_t Sizes; // 单个字符的字模数据个数
uint16_t Table_Rows; // 该参数只有汉字字模用到,表示二维数组的行大小
} pFONT;
/*------------------------------------ 中文字体 ---------------------------------------------*/
extern pFONT CH_Font12 ; // 1212字体
extern pFONT CH_Font16 ; // 1616字体
extern pFONT CH_Font20 ; // 2020字体
extern pFONT CH_Font24 ; // 2424字体
extern pFONT CH_Font32 ; // 3232字体
/*------------------------------------ ASCII字体 ---------------------------------------------*/
extern pFONT ASCII_Font32; // 3216 字体
extern pFONT ASCII_Font24; // 2412 字体
extern pFONT ASCII_Font20; // 2010 字体
extern pFONT ASCII_Font16; // 1608 字体
extern pFONT ASCII_Font12; // 1206 字体
#endif
lcd_fonts.c
/****
***********************************************************************************************************************************************************************************
>>>>> 文件说明:
*
* 1.ASCII字符集: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
* 2.ASCII字模,总共有5种大小的字模:3216、2412、2010、1608、1206,皆是宋体
* 3.中文字模也有五种大小:3232、2424、2020、1616、1212
* 4.中文字库是小字库,也就是用到了相应的汉字再取模
* 5.中文字库每个字模后面都必须要有一个对应的汉字作为索引
*
>>>>> 取模方式说明:
*
* 1.取模软件 PCtolCD2018
* 2.阴码、逆向、逐行式、C51格式。
*
*******************************************************************************************************************************************************************************************************************************************FANKE*****
***/
#include "lcd_fonts.h"
// 汉字字模数据,字体为1212
// 添加新字模时,一定要不超过数组第一维的大小,用户可根据需求自行调整
// 中文标点符号和英文标点符号是不一样的!如果没有对中文标点符号进行取模,显示时要用英文输入标点,使用ASCII的字模
// 每个字模后面都必须要有一个对应的汉字作为索引
//
const uint8_t Chinese_1212[20][24]=
{
{0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x07,0x04,0x00,0xFC,0x03,0x14,0x02,0xA4,0x01,0x66,0x00,0x9E,0x07,0x00,0x00,0x00,0x00},{"反"},/*5*/
{0x00,0x00,0x00,0x00,0x60,0x00,0xFE,0x07,0xFA,0x03,0x16,0x01,0xFF,0x0F,0xFC,0x03,0x04,0x02,0xFC,0x03,0x00,0x00,0x00,0x00},{"客"},/*6*/
{0x00,0x00,0x00,0x00,0x00,0x01,0x7F,0x01,0x84,0x01,0x3F,0x01,0x4C,0x01,0xF6,0x07,0x05,0x01,0x04,0x01,0x00,0x00,0x00,0x00},{"科"},/*7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x84,0x00,0xFF,0x07,0x84,0x00,0xFC,0x03,0x27,0x03,0xC4,0x00,0x37,0x07,0x00,0x00,0x00,0x00},{"技"},/*8*/
};
// 汉字字模数据,字体为1616
// 添加新字模时,一定要不超过数组第一维的大小,用户可根据需求自行调整
// 中文标点符号和英文标点符号是不一样的!如果没有对中文标点符号进行取模,显示时要用英文输入标点,使用ASCII的字模
// 每个字模后面都必须要有一个对应的汉字作为索引
//
const uint8_t Chinese_1616[20][32]=
{
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x1F,0x04,0x00,0xFC,0x0F,0x14,0x08,0x24,0x04,0x64,0x02,0x86,0x01,0x62,0x07,0x1D,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{"反"},/*5*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0xFE,0x1F,0xF2,0x07,0x18,0x02,0xE6,0x01,0x1F,0x3E,0xF8,0x07,0x08,0x04,0xF8,0x07,0x00,0x00,0x00,0x00,0x00,0x00},{"客"},/*6*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xBE,0x09,0x08,0x0B,0xFE,0x08,0x98,0x09,0xEC,0x3F,0x0A,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00},{"科"},/*7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x02,0xFF,0x3F,0x04,0x02,0xE4,0x1F,0x4C,0x10,0x87,0x08,0x04,0x07,0x84,0x07,0x77,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{"技"},/*8*/
};
// 汉字字模数据,字体为2020
// 添加新字模时,一定要不超过数组第一维的大小,用户可根据需求自行调整
// 中文标点符号和英文标点符号是不一样的!如果没有对中文标点符号进行取模,显示时要用英文输入标点,使用ASCII的字模
// 每个字模后面都必须要有一个对应的汉字作为索引
//
const uint8_t Chinese_2020[20][60]=
{
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x03,0xF8,0x1F,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0xF8,0xFF,0x01,0x48,0x80,0x01,0x88,0xC0,0x00,0x08,0x61,0x00,0x08,0x36,0x00,0x04,0x1C,0x00,0x84,0xE3,0x00,0x72,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"反"},/*5*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x03,0x00,0xFE,0xFF,0x01,0x62,0x00,0x01,0xF8,0x7F,0x00,0x7E,0x30,0x00,0x80,0x0F,0x00,0x7F,0xF0,0x03,0xF8,0x7F,0x00,0x08,0x40,0x00,0xF8,0x7F,0x00,0x08,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"客"},/*6*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x40,0x00,0x1E,0x46,0x00,0x10,0x4C,0x00,0x10,0x58,0x00,0xFE,0x43,0x00,0x10,0x46,0x00,0x78,0x4C,0x00,0xDC,0x40,0x00,0x14,0xF0,0x03,0x92,0x4F,0x00,0x10,0x40,0x00,0x10,0x40,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,0x08,0x10,0x00,0x08,0x10,0x00,0xFF,0xFF,0x03,0x08,0x10,0x00,0x08,0x10,0x00,0xE8,0xFF,0x01,0x1C,0x02,0x01,0x0B,0x86,0x00,0x08,0x6C,0x00,0x08,0x18,0x00,0x08,0x6F,0x00,0xEF,0x80,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"技"},/*8*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFF,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0xFF,0x07,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,0x10,0x20,0x00,0xFE,0xFF,0x01,0x10,0x20,0x00,0xF0,0x3F,0x00,0x10,0x20,0x00,0xF0,0x3F,0x00,0x10,0x20,0x00,0xFF,0xFF,0x03,0x10,0x21,0x00,0xFC,0xFF,0x00,0x03,0x01,0x03,0xFE,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"基 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0xF0,0x1F,0x00,0x18,0x18,0x00,0x04,0x0C,0x00,0xFF,0xFF,0x00,0x04,0x82,0x00,0x04,0x82,0x00,0xFC,0xFF,0x00,0x04,0x80,0x00,0x04,0x00,0x00,0x04,0x00,0x02,0xF8,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"色 "},/*2*/
};
// 汉字字模数据,字体为2424
// 添加新字模时,一定要不超过数组第一维的大小,用户可根据需求自行调整
// 中文标点符号和英文标点符号是不一样的!如果没有对中文标点符号进行取模,显示时要用英文输入标点,使用ASCII的字模
// 每个字模后面都必须要有一个对应的汉字作为索引
//
const uint8_t Chinese_2424[65][72]=
{
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF8,0xFF,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0xF8,0xFF,0x3F,0x98,0x01,0x30,0x98,0x03,0x18,0x18,0x03,0x08,0x18,0x06,0x0C,0x18,0x0C,0x06,0x08,0x18,0x03,0x0C,0xF0,0x00,0x0C,0xF0,0x01,0x06,0x1C,0x07,0x86,0x03,0x3C,0x73,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"反"},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x70,0x00,0xFC,0xFF,0xFF,0x0C,0x07,0xC0,0x8C,0x03,0xC0,0xC0,0xFF,0x1F,0xF0,0x03,0x0E,0x1C,0x8E,0x03,0x00,0x78,0x00,0xC0,0xC7,0x07,0x3F,0x00,0xF8,0xE0,0xFF,0x1F,0x60,0x00,0x18,0x60,0x00,0x18,0x60,0x00,0x18,0xE0,0xFF,0x1F,0x60,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"客"},/*3*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x80,0x07,0x18,0x7E,0x30,0x18,0x60,0x60,0x18,0x60,0x80,0x19,0x60,0x00,0x1B,0xFE,0x07,0x18,0x60,0x18,0x18,0xF0,0x71,0x18,0x70,0xC3,0x18,0x68,0x06,0x18,0x6C,0x00,0xFF,0x66,0xFE,0x18,0x62,0x00,0x18,0x60,0x00,0x18,0x60,0x00,0x18,0x60,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"科"},/*4*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0xFC,0xFF,0xFF,0x01,0x03,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0xFE,0x7F,0xF0,0x19,0x60,0x3F,0x38,0x30,0x30,0x30,0x18,0x30,0x60,0x0C,0x30,0xC0,0x06,0x30,0x80,0x03,0x30,0xE0,0x0E,0x30,0x38,0x78,0x1F,0x07,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"技"},/*5*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xF8,0xFF,0xC0,0x18,0xC0,0xCC,0x18,0xC0,0xCC,0xF8,0xFF,0xCC,0x18,0xC0,0xCC,0x18,0x0C,0xCC,0x18,0x0C,0xCC,0xD8,0xFF,0xCC,0xD8,0xCC,0xCC,0xD8,0xCC,0xCC,0xD8,0xCC,0xCC,0xCC,0xCC,0xC0,0xCC,0xCC,0xC0,0x04,0xFC,0xC0,0x06,0x0C,0x7E,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,0xF8,0xFF,0x7F,0x18,0x00,0x60,0x18,0x00,0x60,0xF8,0xFF,0x7F,0x18,0x06,0x66,0x18,0x0C,0x06,0x18,0x08,0x03,0xD8,0xFF,0x7F,0x18,0x0C,0x06,0x18,0x0C,0x06,0xF8,0xFF,0xFF,0x0C,0x0C,0x06,0x0C,0x0C,0x06,0x04,0x06,0x06,0x06,0x03,0x06,0x03,0x01,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"屏 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0xC0,0x84,0xFF,0xCC,0x9C,0xC1,0xCC,0x88,0xC1,0xCC,0x80,0xD9,0xCC,0x83,0xD9,0xCC,0x8E,0xD9,0xCC,0x98,0xD9,0xCC,0x80,0xD9,0xCC,0x80,0xD9,0xCC,0x88,0xD9,0xCC,0x98,0xCD,0xCC,0x0C,0x0C,0xCC,0x0C,0x36,0xC0,0x0C,0x63,0xC0,0xC6,0xC1,0xC0,0x74,0x80,0x7D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"测 "},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x1B,0x0C,0x00,0x73,0x18,0x00,0x43,0x38,0x00,0x03,0x80,0xFF,0xFF,0x00,0x00,0x03,0x1F,0x00,0x03,0x18,0x00,0x03,0x98,0xFF,0x03,0x18,0x18,0x02,0x18,0x18,0x06,0x98,0x18,0x06,0xD8,0x18,0x86,0x78,0x18,0x8C,0x38,0xF8,0x8D,0x9C,0x0F,0x98,0x08,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"试 "},/*3*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x83,0x01,0xFE,0xFF,0xFF,0x00,0x83,0x01,0xF0,0xFF,0x3F,0x30,0x00,0x30,0xF0,0xFF,0x3F,0x30,0x00,0x30,0xF0,0xFF,0x3F,0x30,0x0C,0x30,0x00,0x06,0x00,0xFE,0xFF,0xFF,0xC0,0x30,0x0C,0xF8,0xFF,0x7F,0x67,0x30,0x98,0x60,0x30,0x18,0x60,0x30,0x1F,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"幕 "},/*4*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x80,0xC1,0x00,0xC0,0x80,0x01,0x60,0x00,0x03,0x30,0x00,0x06,0x18,0x00,0x1C,0x0E,0x00,0x70,0x02,0x00,0xC0,0xF8,0xFF,0x0F,0x00,0x03,0x0E,0x00,0x03,0x0E,0x80,0x01,0x06,0x80,0x01,0x06,0xC0,0x00,0x06,0x60,0x00,0x07,0x38,0xFC,0x03,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"分 "},/*5*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x60,0x0C,0x30,0x60,0x18,0x30,0x60,0x10,0xFE,0xE1,0xFF,0x00,0x60,0x00,0x82,0xED,0xC1,0xC4,0x6C,0x63,0x6C,0x6C,0x36,0xFE,0x65,0xFF,0x30,0x66,0x18,0x30,0x66,0x18,0x30,0x60,0x18,0xFE,0xB1,0xFF,0x30,0x30,0x18,0x38,0x18,0x18,0x1C,0x1C,0x18,0x0E,0x0E,0x18,0x02,0x02,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"辨 "},/*6*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0xFF,0xFF,0xFF,0x00,0x38,0x00,0x06,0x4E,0x60,0x8C,0x63,0x38,0xD0,0x3F,0x08,0x00,0x1C,0x00,0x20,0x26,0x04,0xF8,0xC3,0x1C,0xCF,0xFF,0xF1,0x02,0x30,0x41,0x00,0x30,0x00,0xFF,0xFF,0xFF,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"率 "},/*7*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x80,0x00,0x30,0x80,0x01,0x30,0x00,0x03,0x30,0xFE,0xFF,0xFE,0x06,0xC0,0x30,0x86,0xC4,0x30,0x40,0x18,0x30,0x30,0x30,0x30,0x18,0x60,0xF0,0x0F,0xC0,0x3E,0xF8,0x7F,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0xFF,0xFF,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"控 "},/*8*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0x60,0x98,0x01,0x60,0x8C,0x01,0x63,0xFC,0x3F,0x63,0x86,0x01,0x63,0x82,0x01,0x63,0xFF,0xFF,0x63,0x80,0x01,0x63,0x80,0x01,0x63,0xFC,0x7F,0x63,0x8C,0x61,0x63,0x8C,0x61,0x63,0x8C,0x61,0x60,0x8C,0x61,0x60,0x8C,0x3D,0x60,0x80,0x01,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"制 "},/*9*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xC7,0x7F,0x0C,0xC6,0x60,0x0C,0xC6,0x60,0xFC,0xC7,0x7F,0x0C,0xC6,0x60,0x00,0x30,0x06,0xFE,0xFF,0xFF,0x00,0x6E,0x00,0x00,0xC7,0x01,0xF0,0x01,0x0F,0x1F,0x00,0xF8,0xFC,0xC7,0x7F,0x0C,0xC6,0x60,0x0C,0xC6,0x60,0xFC,0xC7,0x7F,0x0C,0xC6,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"器 "},/*10*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x00,0x30,0x00,0xFE,0xFF,0xFF,0x06,0x00,0xC0,0x06,0x00,0xC0,0xE0,0xFF,0x0F,0x00,0x00,0x07,0x00,0x80,0x01,0x00,0xE0,0x00,0x00,0x30,0x00,0xFF,0xFF,0xFF,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"字 "},/*0*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x80,0x01,0x30,0xC0,0x00,0xF8,0xDF,0xFF,0xC8,0x60,0x06,0x84,0x71,0x0C,0x02,0x39,0x08,0x01,0x10,0x00,0x60,0x00,0x0C,0x70,0x00,0x0C,0xB8,0xFF,0xFF,0x3C,0x00,0x0C,0x36,0x04,0x0C,0x32,0x0C,0x0C,0x30,0x18,0x0C,0x30,0x10,0x0C,0x30,0x00,0x0C,0x30,0x00,0x0C,0x30,0xE0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"符 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x30,0x00,0x60,0xE0,0x00,0xF0,0xFF,0xFF,0x38,0x60,0x00,0xF6,0xFF,0xFF,0x33,0x60,0x00,0xF0,0xFF,0xFF,0x30,0x60,0x00,0xF0,0xFF,0xFF,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0xFE,0xFF,0xFF,0x00,0xFE,0x01,0x80,0x31,0x07,0x70,0x30,0x38,0x0F,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"集 "},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0xFC,0xFF,0x7F,0x0C,0x18,0x60,0x0C,0x18,0x60,0x0C,0x18,0x60,0x0C,0x18,0x60,0x0C,0x18,0x60,0xFC,0xFF,0x7F,0x0C,0x18,0x60,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"中 "},/*0*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x60,0x00,0xFF,0xFF,0xFF,0x60,0x00,0x0C,0x60,0x00,0x0C,0xC0,0x00,0x06,0xC0,0x00,0x06,0x80,0x01,0x03,0x00,0x83,0x01,0x00,0xC7,0x00,0x00,0x6C,0x00,0x00,0x38,0x00,0x00,0xEE,0x00,0xC0,0x83,0x07,0x78,0x00,0x3C,0x06,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"文 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xFF,0x3F,0x18,0x00,0x30,0x18,0x00,0x30,0xF8,0xFF,0x3F,0x18,0x00,0x30,0x18,0x00,0x30,0xF8,0xFF,0x3F,0x18,0x00,0x30,0x04,0xC6,0x20,0x08,0xC6,0x30,0x18,0xC6,0x38,0x30,0xC6,0x18,0x20,0xC6,0x08,0x00,0xC6,0x00,0xFE,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"显 "},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFF,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x30,0x00,0x20,0x30,0x04,0x30,0x30,0x0C,0x38,0x30,0x18,0x18,0x30,0x30,0x0C,0x30,0x60,0x06,0x30,0xC0,0x02,0x30,0x80,0x00,0x30,0x00,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"示 "},/*3*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0xFF,0xFF,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0xF0,0x7F,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0x30,0x30,0x00,0xFF,0xFF,0xFF,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,0x03,0x00,0x80,0x01,0x00,0xC0,0xFF,0x07,0x60,0x00,0x03,0x38,0x80,0x01,0x0C,0x60,0x00,0xF4,0xFF,0x3F,0x30,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xF8,0x30,0x00,0x98,0x03,0x00,0x07,0x0E,0xE0,0x01,0x78,0x1E,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00},{"负 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x60,0x30,0x06,0x30,0x30,0x0C,0x30,0x30,0x1C,0x18,0x30,0x38,0x18,0x30,0x30,0x0C,0x30,0x60,0x0E,0x30,0xE0,0x06,0x30,0xC0,0x02,0x30,0x80,0x00,0x30,0x00,0x00,0x30,0x00,0xC0,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"小 "},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x03,0xC6,0x0C,0x01,0xC4,0x86,0x01,0xC0,0x80,0xFF,0xFE,0xCF,0x60,0xE0,0xC0,0x60,0xF8,0xE3,0x60,0xCC,0xFE,0x31,0xC3,0x98,0x31,0x30,0x80,0x31,0xFF,0x0F,0x1B,0x0C,0x0C,0x1B,0x06,0x06,0x0E,0x3C,0x07,0x0E,0xE0,0x03,0x1B,0xE0,0xC3,0x31,0x3C,0x76,0xE0,0x07,0x18,0x80,0x00,0x00,0x00,0x00,0x00,0x00},{"数 "},/*3*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x03,0x30,0x00,0x03,0x30,0xFE,0xFF,0x30,0x00,0x03,0x30,0x00,0x03,0xFF,0xFD,0x7F,0x30,0x0C,0x60,0x30,0xFC,0x7F,0x30,0x0C,0x60,0x30,0xFC,0x7F,0x30,0x0C,0x60,0xB0,0xFD,0x7F,0x78,0x0C,0x60,0x07,0xFF,0xFF,0x00,0x60,0x1C,0x00,0x1C,0xF0,0x80,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"填 "},/*0*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x00,0x38,0x00,0xFF,0xFF,0xFF,0x00,0x0E,0x00,0x80,0x83,0x01,0xC0,0x00,0x07,0x70,0x00,0x0C,0xFC,0xFF,0x3F,0x00,0xC3,0x20,0x00,0xC3,0x00,0x80,0xC1,0x00,0x80,0xC1,0xC0,0xE0,0xC0,0xC0,0x38,0xC0,0xC0,0x07,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"充 "},/*1*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0xFE,0xFF,0xFF,0x06,0x00,0xC0,0x06,0x86,0xC3,0xC0,0x01,0x1E,0x38,0x00,0x70,0x06,0x00,0xC0,0x00,0x00,0x00,0xF8,0xFF,0x3F,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0x00,0x18,0x00,0xFE,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"空 "},/*2*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x60,0x00,0x30,0x30,0x00,0x30,0xF0,0x7F,0x30,0x78,0x70,0xFF,0x5B,0x38,0x30,0xCC,0x0C,0xF8,0x80,0x07,0xB8,0xC1,0x0F,0x3C,0x7A,0x78,0x36,0x0E,0xC0,0x33,0xF8,0x7F,0x31,0x18,0x60,0x30,0x18,0x60,0x30,0x18,0x60,0x30,0x18,0x60,0x30,0xF8,0x7F,0x30,0x18,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"格 "},/*3*/
};
// 汉字字模数据,字体为3232
// 添加新字模时,一定要不超过数组第一维的大小,用户可根据需求自行调整
// 中文标点符号和英文标点符号是不一样的!如果没有对中文标点符号进行取模,显示时要用英文输入标点,使用ASCII的字模
// 每个字模后面都必须要有一个对应的汉字作为索引
//
const uint8_t Chinese_3232[20][128]=
{
{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,0xC0,0x3F,0xE0,0xFF,0xFF,0x7F,0xE0,0xFF,0x3F,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0xE0,0xFF,0xFF,0x3F,0xE0,0xFF,0xFF,0x3F,0x60,0x0C,0x00,0x38,0x60,0x1C,0x00,0x1C,0x60,0x38,0x00,0x0E,0x60,0x30,0x00,0x0E,0x60,0xE0,0x00,0x07,0x60,0xC0,0xC1,0x03,0x70,0x80,0xE3,0x01,0x30,0x00,0xFF,0x00,0x30,0x00,0x3C,0x00,0x38,0x00,0xFF,0x00,0x1C,0xE0,0xE7,0x03,0x1C,0xFE,0x80,0x3F,0xCE,0x3F,0x00,0xFC,0x84,0x03,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,0x80,0x00,0x00,0x00,0xC0,0x03,0x00,0x00,0x80,0x03,0x00,0xFC,0xFF,0xFF,0x7F,0xFC,0xFF,0xFF,0x7F,0x0C,0x08,0x00,0x60,0x0C,0x0E,0x00,0x60,0x0C,0xFF,0xFF,0x67,0x80,0xFF,0xFF,0x07,0xE0,0x0F,0x80,0x03,0x78,0x1C,0xE0,0x01,0x18,0xF8,0x7C,0x00,0x00,0xC0,0x0F,0x00,0x00,0xFF,0xFF,0x00,0xFF,0x1F,0xF0,0xFF,0x3E,0x00,0x00,0xFC,0xC0,0xFF,0xFF,0x07,0xC0,0xFF,0xFF,0x07,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0xFF,0xFF,0x07,0xC0,0xFF,0xFF,0x07,0xC0,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"客"},/*4*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x1F,0x00,0x06,0xFF,0x3F,0x02,0x06,0xFE,0x00,0x06,0x06,0xC0,0x00,0x0C,0x06,0xC0,0x00,0x18,0x06,0xC0,0x00,0x30,0x06,0xFF,0x1F,0x20,0x06,0xFF,0x1F,0x00,0x06,0xC0,0x80,0x00,0x06,0xE0,0x80,0x03,0x06,0xE0,0x03,0x07,0x06,0xF0,0x06,0x0C,0x06,0xF0,0x0C,0x08,0x06,0xD8,0x18,0x00,0x06,0xDC,0x10,0xF0,0xFF,0xCE,0xF0,0xFF,0xFF,0xC7,0xF0,0x1F,0x06,0xC7,0x00,0x00,0x06,0xC2,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0xC0,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"科"},/*5*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0xC0,0x00,0x60,0x00,0xC0,0x00,0x60,0x00,0xC0,0x00,0x60,0xF0,0xFF,0xFF,0xFF,0xF7,0xFF,0xFF,0xFF,0x07,0xC0,0x00,0x60,0x00,0xC0,0x00,0x60,0x00,0xC0,0x00,0x60,0x00,0xC0,0x00,0x60,0xF6,0xFF,0x7F,0xE0,0xF7,0xFF,0x7F,0xFC,0x80,0x01,0x60,0x7F,0x00,0x03,0x30,0x63,0x00,0x03,0x18,0x60,0x00,0x06,0x0C,0x60,0x00,0x0C,0x07,0x60,0x00,0xB8,0x03,0x60,0x00,0xF0,0x01,0x60,0x00,0xF8,0x01,0x60,0x00,0xBE,0x07,0x60,0xE0,0x0F,0x7E,0x7F,0xFC,0x01,0xF8,0x3F,0x38,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{"技"},/*6*/
};
pFONT CH_Font12 = { Chinese_1212[0], 12, 12, 24 , sizeof(Chinese_1212)/sizeof(Chinese_1212[0]) };
pFONT CH_Font16 = { Chinese_1616[0], 16, 16, 32 , sizeof(Chinese_1616)/sizeof(Chinese_1616[0]) };
pFONT CH_Font20 = { Chinese_2020[0], 20, 20, 60 , sizeof(Chinese_2020)/sizeof(Chinese_2020[0]) };
pFONT CH_Font24 = { Chinese_2424[0], 24, 24, 72 , sizeof(Chinese_2424)/sizeof(Chinese_2424[0]) };
pFONT CH_Font32 = { Chinese_3232[0], 32, 32, 128 , sizeof(Chinese_3232)/sizeof(Chinese_3232[0]) };
/*********************************************************************************************************************************************************************************************************************************************FANKE*****/
/*
* 1.以下为ASCII字模数据
* 2.ASCII字符集: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
* 3.ASCII字模,宋体,总共有5种大小的字模:3216、2412、2010、1608、1206
*/
/*********************************************************************************************************************************************************************************************************************************************FANKE*****/
const uint8_t ASCII_3216_Table [] =
{
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,/*" ",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0x80,0x03,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0xC0,0x03,0xC0,0x03,0x80,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"!",1*/
0x00,0x00,0x00,0x00,0xC0,0x18,0xE0,0x1C,0xE0,0x1C,0x70,0x0E,0x30,0x06,0x18,0x03,0x8C,0x01,0x84,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,/*""",2*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0xFE,0x7F,0xFE,0x7F,0xFE,0x7F,0x10,0x08,0x10,0x08,0x10,0x08,0x10,0x08,0x10,0x08,0x10,0x08,0xFE,0x7F,0xFE,0x7F,0xFE,0x7F,0x18,0x0C,0x08,0x04,0x08,0x04,0x08,0x04,0x08,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"#",3*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0xC0,0x03,0xB0,0x0C,0x90,0x18,0x98,0x18,0x98,0x1C,0x98,0x1C,0xB8,0x00,0xB0,0x00,0xF0,0x00,0xE0,0x00,0xC0,0x03,0x80,0x07,0x80,0x0F,0x80,0x0C,0x80,0x1C,0x80,0x18,0x9C,0x18,0x9C,0x18,0x8C,0x18,0x8C,0x0C,0x98,0x06,0xE0,0x03,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x00,/*"$",4*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x08,0x36,0x08,0x22,0x04,0x63,0x04,0x63,0x02,0x63,0x02,0x63,0x02,0x63,0x01,0x63,0x01,0x22,0x01,0xB6,0x1C,0x9C,0x36,0x40,0x22,0x40,0x63,0x40,0x63,0x20,0x63,0x20,0x63,0x10,0x63,0x10,0x63,0x10,0x22,0x08,0x36,0x08,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"%",5*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x98,0x00,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x00,0xCC,0x00,0x5C,0x00,0x38,0x00,0x1C,0x3E,0x3C,0x08,0x32,0x08,0x73,0x08,0x63,0x04,0xE3,0x04,0xC3,0x04,0x83,0x03,0x83,0x43,0x06,0x67,0x8C,0x3E,0x78,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"&",6*/
0x00,0x00,0x00,0x00,0x1C,0x00,0x3C,0x00,0x3C,0x00,0x30,0x00,0x30,0x00,0x10,0x00,0x0C,0x00,0x06,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,/*"'",7*/
0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x18,0x00,0x0C,0x00,0x04,0x00,0x06,0x00,0x02,0x00,0x03,0x00,0x03,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x00,0x03,0x00,0x03,0x00,0x02,0x00,0x06,0x00,0x04,0x00,0x0C,0x00,0x18,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x00,/*"(",8*/
0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x18,0x00,0x30,0x00,0x20,0x00,0x60,0x00,0x40,0x00,0xC0,0x00,0xC0,0x00,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xC0,0x00,0xC0,0x00,0xC0,0x00,0x60,0x00,0x20,0x00,0x30,0x00,0x18,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x00,0x00,/*")",9*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x03,0x0C,0x63,0x1C,0x71,0x38,0x39,0x60,0x0D,0x80,0x03,0x80,0x03,0x60,0x0D,0x38,0x39,0x1C,0x71,0x8C,0x61,0x80,0x03,0x80,0x03,0x80,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"*",10*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0xFC,0x7F,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"+",11*/
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,0x1C,0x00,0x3C,0x00,0x3C,0x00,0x30,0x00,0x30,0x00,0x10,0x00,0x0C,0x00,0x06,0x00,/*",",12*/
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,0xFE,0x7F,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,/*"-",13*/
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,0x18,0x00,0x3C,0x00,0x3C,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*".",14*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x60,0x00,0x20,0x00,0x30,0x00,0x10,0x00,0x18,0x00,0x08,0x00,0x0C,0x00,0x04,0x00,0x06,0x00,0x02,0x00,0x03,0x00,0x01,0x80,0x01,0x80,0x00,0xC0,0x00,0x40,0x00,0x60,0x00,0x20,0x00,0x30,0x00,0x10,0x00,0x18,0x00,0x08,0x00,0x0C,0x00,0x04,0x00,0x06,0x00,0x02,0x00,0x00,0x00,0x00,0x00,/*"/",15*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x60,0x04,0x30,0x0C,0x18,0x18,0x18,0x18,0x18,0x10,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x18,0x10,0x18,0x18,0x18,0x18,0x30,0x0C,0x60,0x04,0xC0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"0",16*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0xF8,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xC0,0x03,0xF8,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"1",17*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x07,0x10,0x1C,0x08,0x18,0x04,0x30,0x04,0x30,0x0C,0x30,0x0C,0x30,0x00,0x30,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x06,0x00,0x03,0x80,0x01,0xC0,0x00,0x40,0x00,0x20,0x20,0x10,0x20,0x08,0x20,0x04,0x30,0xFC,0x1F,0xFC,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"2",18*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x03,0x18,0x06,0x0C,0x0C,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x06,0xC0,0x03,0x00,0x0E,0x00,0x18,0x00,0x10,0x00,0x30,0x00,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x10,0x0C,0x18,0x18,0x0C,0xE0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"3",19*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x06,0x00,0x07,0x00,0x07,0x80,0x06,0x80,0x06,0x40,0x06,0x20,0x06,0x20,0x06,0x10,0x06,0x10,0x06,0x08,0x06,0x0C,0x06,0x04,0x06,0x02,0x06,0xFE,0x3F,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0xC0,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"4",20*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x3F,0xF0,0x3F,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0xC8,0x07,0x28,0x0C,0x18,0x18,0x08,0x10,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x0C,0x30,0x0C,0x30,0x04,0x18,0x04,0x18,0x18,0x0C,0xE0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"5",21*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x07,0x60,0x18,0x30,0x18,0x10,0x18,0x18,0x00,0x08,0x00,0x08,0x00,0x0C,0x00,0xCC,0x07,0x6C,0x0C,0x1C,0x18,0x1C,0x10,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x18,0x30,0x18,0x10,0x30,0x18,0x70,0x0C,0xC0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"6",22*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x3F,0xF8,0x3F,0x08,0x10,0x0C,0x08,0x04,0x08,0x04,0x04,0x00,0x04,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x01,0x00,0x01,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"7",23*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x07,0x30,0x0C,0x18,0x18,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x1C,0x30,0x1C,0x10,0x78,0x18,0xF0,0x04,0xE0,0x03,0x18,0x0F,0x0C,0x1E,0x0C,0x1C,0x06,0x38,0x06,0x30,0x06,0x30,0x06,0x30,0x06,0x30,0x0C,0x18,0x18,0x0C,0xE0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"8",24*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x03,0x18,0x04,0x0C,0x08,0x0C,0x18,0x06,0x10,0x06,0x30,0x06,0x30,0x06,0x30,0x06,0x30,0x06,0x30,0x0E,0x38,0x0C,0x34,0x18,0x36,0xF0,0x31,0x00,0x30,0x00,0x18,0x00,0x18,0x00,0x08,0x0C,0x0C,0x0C,0x06,0x0C,0x03,0xF0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"9",25*/
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,0x80,0x01,0xC0,0x03,0xC0,0x03,0x80,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0xC0,0x03,0xC0,0x03,0x80,0x01,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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0xC0,0x01,0xC0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0xC0,0x01,0xC0,0x01,0x80,0x01,0xC0,0x00,0xC0,0x00,0x00,0x00,/*";",27*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"<",28*/
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,0xFE,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"=",29*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*">",30*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x07,0x30,0x18,0x18,0x30,0x08,0x60,0x0C,0x60,0x1C,0x60,0x1C,0x60,0x1C,0x60,0x00,0x30,0x00,0x18,0x00,0x0E,0x00,0x03,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x80,0x01,0xC0,0x03,0xC0,0x03,0x80,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"?",31*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x07,0x60,0x08,0x30,0x10,0x18,0x20,0x0C,0x2B,0x8C,0x4D,0x84,0x4C,0xC6,0x4C,0xC6,0x44,0x66,0x44,0x66,0x44,0x66,0x44,0x66,0x46,0x66,0x26,0x66,0x26,0x64,0x17,0xCC,0x0C,0x0C,0x40,0x08,0x20,0x18,0x30,0x30,0x18,0xC0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"@",32*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0x20,0x03,0x20,0x03,0x20,0x03,0x20,0x03,0x30,0x02,0x10,0x06,0x10,0x06,0x10,0x06,0x10,0x04,0xF8,0x0F,0x08,0x0C,0x08,0x0C,0x08,0x0C,0x04,0x18,0x04,0x18,0x04,0x18,0x06,0x38,0x1F,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"A",33*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x18,0x1C,0x18,0x18,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x18,0x18,0x0C,0xF8,0x07,0x18,0x18,0x18,0x30,0x18,0x20,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x30,0x18,0x18,0xFE,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"B",34*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x07,0x60,0x38,0x10,0x30,0x18,0x60,0x0C,0x40,0x0C,0x40,0x0C,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x0C,0x40,0x0C,0x40,0x08,0x20,0x18,0x10,0x30,0x08,0xC0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"C",35*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x03,0x18,0x0E,0x18,0x18,0x18,0x10,0x18,0x30,0x18,0x30,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x20,0x18,0x30,0x18,0x30,0x18,0x18,0x18,0x18,0x18,0x06,0xFE,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"D",36*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x18,0x30,0x18,0x20,0x18,0x40,0x18,0x40,0x18,0x00,0x18,0x00,0x18,0x08,0x18,0x08,0x18,0x0C,0xF8,0x0F,0x18,0x0C,0x18,0x08,0x18,0x08,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x40,0x18,0x40,0x18,0x20,0x18,0x30,0xFE,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"E",37*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x18,0x38,0x18,0x20,0x18,0x40,0x18,0x40,0x18,0x00,0x18,0x00,0x18,0x08,0x18,0x08,0x18,0x0C,0xF8,0x0F,0x18,0x0C,0x18,0x08,0x18,0x08,0x18,0x08,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"F",38*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x30,0x0C,0x10,0x08,0x18,0x18,0x0C,0x10,0x0C,0x10,0x04,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x7E,0x06,0x18,0x06,0x18,0x04,0x18,0x0C,0x18,0x0C,0x18,0x08,0x18,0x18,0x18,0x30,0x04,0xE0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"G",39*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFC,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0xFC,0x3F,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"H",40*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x1F,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xF8,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"I",41*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x7F,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x0E,0x06,0x0E,0x03,0x8E,0x01,0xFC,0x00,/*"J",42*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x3E,0x18,0x0C,0x18,0x04,0x18,0x06,0x18,0x02,0x18,0x01,0x18,0x01,0x98,0x00,0x98,0x00,0xD8,0x00,0xB8,0x01,0xB8,0x01,0x18,0x03,0x18,0x03,0x18,0x06,0x18,0x06,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x18,0x18,0x18,0x7E,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"K",43*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x40,0x18,0x40,0x18,0x20,0x18,0x30,0xFE,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"L",44*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF0,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x38,0x1C,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x32,0x34,0x32,0x64,0x32,0x64,0x32,0x64,0x32,0x64,0x31,0x44,0x31,0xC4,0x31,0xC4,0x31,0xC4,0x30,0xC4,0x30,0x84,0x30,0x8F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"M",45*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF8,0x1C,0x20,0x1C,0x20,0x34,0x20,0x34,0x20,0x64,0x20,0x64,0x20,0xC4,0x20,0xC4,0x20,0x84,0x21,0x84,0x21,0x04,0x23,0x04,0x23,0x04,0x26,0x04,0x26,0x04,0x2C,0x04,0x2C,0x04,0x38,0x04,0x38,0x04,0x30,0x04,0x30,0x1F,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"N",46*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x30,0x0C,0x18,0x18,0x08,0x10,0x0C,0x30,0x0C,0x30,0x06,0x20,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x04,0x60,0x0C,0x30,0x0C,0x30,0x08,0x10,0x18,0x18,0x30,0x0C,0xC0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"O",47*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x0F,0x18,0x18,0x18,0x30,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x60,0x18,0x30,0x18,0x18,0xF8,0x07,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"P",48*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x30,0x0C,0x18,0x18,0x08,0x10,0x0C,0x30,0x0C,0x30,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,0x60,0xE4,0x21,0x1C,0x33,0x1C,0x36,0x18,0x1E,0x30,0x0E,0xC0,0x07,0x00,0x4C,0x00,0x3C,0x00,0x38,0x00,0x00,/*"Q",49*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x18,0x1C,0x18,0x18,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x18,0x18,0x0C,0xF8,0x07,0x18,0x03,0x18,0x03,0x18,0x06,0x18,0x06,0x18,0x06,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x18,0x18,0x18,0x7E,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"R",50*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x13,0x18,0x1E,0x0C,0x18,0x06,0x18,0x06,0x10,0x06,0x10,0x06,0x00,0x0E,0x00,0x3C,0x00,0xF8,0x00,0xE0,0x03,0x80,0x0F,0x00,0x1E,0x00,0x18,0x00,0x38,0x02,0x30,0x02,0x30,0x06,0x30,0x04,0x30,0x0C,0x18,0x1C,0x0C,0xE4,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"S",51*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x3F,0x8C,0x21,0x84,0x61,0x82,0x41,0x82,0x41,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xE0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"T",52*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x7C,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x0C,0x10,0x18,0x08,0x38,0x04,0xE0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"U",53*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x78,0x18,0x30,0x18,0x10,0x18,0x10,0x18,0x10,0x30,0x08,0x30,0x08,0x30,0x08,0x30,0x08,0x30,0x04,0x60,0x04,0x60,0x04,0x60,0x04,0x60,0x02,0xC0,0x02,0xC0,0x02,0xC0,0x02,0xC0,0x01,0x80,0x01,0x80,0x01,0x80,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"V",54*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCF,0xF3,0x86,0x61,0x86,0x21,0x84,0x21,0x04,0x21,0x0C,0x23,0x8C,0x23,0x8C,0x23,0x8C,0x13,0x8C,0x13,0x88,0x13,0x48,0x12,0x58,0x16,0x58,0x16,0x58,0x0E,0x38,0x0E,0x30,0x0E,0x30,0x0E,0x30,0x0C,0x30,0x04,0x10,0x04,0x10,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"W",55*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x7C,0x18,0x10,0x18,0x08,0x30,0x08,0x30,0x04,0x60,0x04,0x60,0x02,0xC0,0x02,0xC0,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x03,0x40,0x03,0x40,0x06,0x20,0x06,0x20,0x0E,0x10,0x0C,0x10,0x0C,0x18,0x18,0x08,0x38,0x3E,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"X",56*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x7C,0x1C,0x10,0x18,0x10,0x18,0x08,0x30,0x08,0x30,0x08,0x30,0x04,0x60,0x04,0x60,0x04,0xC0,0x02,0xC0,0x02,0xC0,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xE0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"Y",57*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x7F,0x38,0x30,0x18,0x30,0x0C,0x18,0x04,0x18,0x00,0x0C,0x00,0x06,0x00,0x06,0x00,0x03,0x00,0x03,0x80,0x01,0x80,0x01,0xC0,0x00,0xC0,0x00,0x60,0x00,0x60,0x00,0x30,0x00,0x18,0x40,0x18,0x60,0x0C,0x20,0x0C,0x38,0xFE,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"Z",58*/
0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x3F,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x3F,0x00,0x00,0x00,0x00,/*"[",59*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x18,0x00,0x10,0x00,0x30,0x00,0x20,0x00,0x60,0x00,0x60,0x00,0x40,0x00,0xC0,0x00,0x80,0x00,0x80,0x01,0x80,0x01,0x00,0x01,0x00,0x03,0x00,0x02,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x60,0x00,0x00,/*"\",60*/
0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0xFC,0x03,0x00,0x00,0x00,0x00,/*"]",61*/
0x00,0x00,0x00,0x00,0xC0,0x03,0xC0,0x07,0x60,0x04,0x10,0x08,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,/*"^",62*/
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,0xFF,0xFF,/*"_",63*/
0x00,0x00,0x00,0x00,0x78,0x00,0xC0,0x00,0x00,0x01,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,/*"`",64*/
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,0xE0,0x07,0x18,0x0C,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x00,0x1C,0xE0,0x1B,0x38,0x18,0x0C,0x18,0x06,0x18,0x06,0x18,0x06,0x18,0x06,0x98,0x0C,0x9E,0xF8,0x71,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"a",65*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x1E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x98,0x07,0x58,0x1C,0x38,0x18,0x38,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x10,0x38,0x18,0x38,0x0C,0xC8,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"b",66*/
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,0xC0,0x07,0x70,0x08,0x30,0x18,0x18,0x18,0x0C,0x18,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x20,0x18,0x20,0x18,0x10,0x30,0x08,0xC0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"c",67*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x1E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0xE0,0x1B,0x30,0x1C,0x18,0x18,0x18,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x08,0x18,0x18,0x1C,0x30,0x7A,0xE0,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"d",68*/
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,0xC0,0x03,0x30,0x0C,0x10,0x18,0x18,0x10,0x0C,0x30,0x0C,0x30,0x0C,0x30,0xFC,0x3F,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x18,0x20,0x18,0x10,0x70,0x18,0xC0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"e",69*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x80,0x61,0x80,0x60,0xC0,0x60,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xFC,0x1F,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xF8,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"f",70*/
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,0xC0,0x77,0x30,0x6C,0x10,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x10,0x18,0x30,0x0C,0xF0,0x07,0x18,0x00,0x18,0x00,0xF8,0x03,0xF0,0x1F,0x18,0x38,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x18,0x18,0xE0,0x07,/*"g",71*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x1E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x98,0x07,0x58,0x0C,0x38,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"h",72*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0xC0,0x03,0x80,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xF8,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xF8,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"i",73*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x1E,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xC0,0x0F,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x18,0x06,0x18,0x02,0xF0,0x01,/*"j",74*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x1E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x3E,0x18,0x0C,0x18,0x04,0x18,0x02,0x18,0x01,0x98,0x01,0xD8,0x01,0x78,0x03,0x38,0x03,0x18,0x06,0x18,0x0C,0x18,0x0C,0x18,0x18,0x18,0x38,0x7E,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"k",75*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xF8,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xF8,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"l",76*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0xF7,0x3C,0x8E,0x63,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0xCF,0xF3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"m",77*/
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,0x90,0x07,0x5E,0x0C,0x38,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"n",78*/
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,0xC0,0x03,0x30,0x0C,0x10,0x18,0x18,0x18,0x08,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x0C,0x30,0x18,0x18,0x18,0x18,0x30,0x0C,0xC0,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"o",79*/
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,0x90,0x07,0x5E,0x0C,0x38,0x18,0x18,0x10,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x18,0x18,0x38,0x18,0x78,0x0C,0x98,0x07,0x18,0x00,0x18,0x00,0x18,0x00,0x7E,0x00,/*"p",80*/
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,0xC0,0x13,0x30,0x1E,0x18,0x1C,0x18,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x0C,0x18,0x08,0x18,0x18,0x1C,0x30,0x1E,0xE0,0x19,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x7E,/*"q",81*/
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,0x60,0x38,0x7E,0x66,0x60,0x61,0xE0,0x01,0xE0,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"r",82*/
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,0xC0,0x27,0x60,0x38,0x30,0x30,0x30,0x20,0x30,0x20,0x70,0x00,0xE0,0x03,0x80,0x0F,0x00,0x1E,0x00,0x38,0x08,0x30,0x08,0x30,0x18,0x30,0x38,0x18,0xC8,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"s",83*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0xE0,0x00,0xFC,0x1F,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x20,0xC0,0x20,0x80,0x11,0x00,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"t",84*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x1E,0x1E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x1C,0x30,0x7A,0xE0,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"u",85*/
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,0x3E,0x7C,0x18,0x30,0x18,0x10,0x18,0x18,0x30,0x08,0x30,0x08,0x20,0x04,0x60,0x04,0x60,0x04,0xC0,0x02,0xC0,0x02,0xC0,0x03,0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"v",86*/
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,0xDF,0xF3,0x86,0x61,0x84,0x21,0x8C,0x21,0x8C,0x21,0x8C,0x13,0x88,0x13,0x58,0x13,0x58,0x12,0x58,0x0E,0x70,0x0E,0x30,0x0E,0x30,0x0C,0x30,0x04,0x20,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"w",87*/
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,0x7C,0x3E,0x30,0x08,0x70,0x08,0x60,0x04,0xC0,0x02,0xC0,0x02,0x80,0x01,0x80,0x01,0x80,0x03,0x40,0x06,0x20,0x06,0x20,0x0C,0x10,0x18,0x18,0x18,0x3E,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"x",88*/
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,0x3E,0x7C,0x18,0x18,0x18,0x08,0x10,0x08,0x30,0x08,0x20,0x04,0x60,0x04,0x60,0x04,0x40,0x02,0xC0,0x02,0x80,0x02,0x80,0x01,0x80,0x01,0x80,0x00,0x80,0x00,0x80,0x00,0x40,0x00,0x7C,0x00,0x3C,0x00,/*"y",89*/
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,0xFC,0x1F,0x0C,0x1C,0x0C,0x0C,0x04,0x06,0x04,0x07,0x00,0x03,0x80,0x01,0xC0,0x01,0xC0,0x00,0x60,0x00,0x70,0x20,0x30,0x20,0x18,0x30,0x0C,0x18,0xFC,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"z",90*/
0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x08,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x03,0x80,0x01,0x00,0x02,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0x30,0x00,0x00,/*"{",91*/
0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,/*"|",92*/
0x00,0x00,0x00,0x00,0x18,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x80,0x01,0x00,0x03,0x80,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x18,0x00,0x00,0x00,/*"}",93*/
0x00,0x00,0x78,0x00,0xC4,0x00,0x82,0x41,0x02,0x41,0x00,0x27,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,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,/*"~",94*/
};
const uint8_t ASCII_2412_Table [] =
{
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,/*" ",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"!",1*/
0x00,0x00,0x00,0x00,0x60,0x06,0x60,0x06,0x30,0x03,0x98,0x01,0x88,0x00,0x44,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,/*""",2*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x02,0x10,0x02,0x10,0x02,0x10,0x02,0xFE,0x07,0xFE,0x07,0x08,0x02,0x08,0x01,0x08,0x01,0x08,0x01,0x08,0x01,0xFE,0x07,0xFE,0x07,0x04,0x01,0x04,0x01,0x04,0x01,0x04,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"#",3*/
0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0xF0,0x01,0x58,0x03,0x4C,0x03,0xCC,0x03,0x4C,0x00,0x58,0x00,0x70,0x00,0xE0,0x00,0xC0,0x01,0xC0,0x01,0x40,0x03,0x4C,0x03,0x5C,0x03,0x4C,0x03,0x48,0x01,0xF0,0x00,0x40,0x00,0x40,0x00,0x00,0x00,/*"$",4*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x01,0x0A,0x01,0x91,0x00,0x91,0x00,0x91,0x00,0x51,0x00,0x51,0x00,0x3A,0x00,0xAE,0x03,0xA0,0x02,0x50,0x04,0x50,0x04,0x48,0x04,0x48,0x04,0x48,0x04,0x84,0x02,0x84,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"%",5*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x6C,0x00,0x6C,0x00,0x6C,0x00,0x6C,0x00,0x6C,0x00,0x2C,0x00,0x98,0x07,0x1C,0x01,0x1A,0x01,0x33,0x01,0x33,0x01,0x63,0x01,0xE3,0x00,0xC3,0x08,0xC6,0x09,0x3C,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"&",6*/
0x00,0x00,0x00,0x00,0x0C,0x00,0x1C,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x04,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,/*"'",7*/
0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x80,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x80,0x00,0x80,0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x00,/*"(",8*/
0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x00,0x00,/*")",9*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0xC0,0x00,0x40,0x00,0x46,0x0C,0x4E,0x0F,0xD0,0x01,0xF0,0x01,0x5E,0x0F,0x46,0x0C,0x40,0x00,0x40,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"*",10*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0xFE,0x0F,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"+",11*/
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,0x0C,0x00,0x1C,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x04,0x00,/*",",12*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"-",13*/
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,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*".",14*/
0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x06,0x00,0x02,0x00,0x03,0x00,0x01,0x00,0x01,0x80,0x00,0x80,0x00,0x40,0x00,0x40,0x00,0x60,0x00,0x20,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x0C,0x00,0x04,0x00,0x06,0x00,0x02,0x00,0x00,0x00,/*"/",15*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x98,0x01,0x0C,0x03,0x0C,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x03,0x0C,0x03,0x98,0x01,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"0",16*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x7C,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xFC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"1",17*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0x84,0x01,0x02,0x03,0x06,0x03,0x06,0x03,0x00,0x03,0x00,0x01,0x80,0x01,0xC0,0x00,0x60,0x00,0x20,0x00,0x10,0x00,0x08,0x02,0x04,0x02,0x06,0x02,0xFE,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"2",18*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xC6,0x00,0x86,0x01,0x86,0x01,0x80,0x01,0x80,0x01,0xC0,0x00,0x70,0x00,0x80,0x01,0x00,0x01,0x00,0x03,0x00,0x03,0x06,0x03,0x06,0x03,0x86,0x01,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"3",19*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0x80,0x01,0xC0,0x01,0xA0,0x01,0xA0,0x01,0x90,0x01,0x88,0x01,0x88,0x01,0x84,0x01,0x82,0x01,0xFE,0x0F,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xE0,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"4",20*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x03,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0xF4,0x00,0x8C,0x01,0x04,0x03,0x00,0x03,0x00,0x03,0x06,0x03,0x06,0x03,0x82,0x01,0x84,0x01,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"5",21*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x01,0x18,0x03,0x0C,0x03,0x0C,0x00,0x04,0x00,0x06,0x00,0xE6,0x01,0x16,0x03,0x0E,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x04,0x06,0x0C,0x02,0x18,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"6",22*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x07,0x0C,0x06,0x04,0x02,0x04,0x01,0x00,0x01,0x00,0x01,0x80,0x00,0x80,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"7",23*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x01,0x0C,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x02,0x1C,0x03,0xF0,0x00,0xC8,0x01,0x0C,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x03,0xF0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"8",24*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x0C,0x01,0x0C,0x03,0x06,0x02,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x07,0x8C,0x06,0x78,0x06,0x00,0x06,0x00,0x03,0x00,0x03,0x0C,0x01,0x8C,0x01,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"9",25*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*":",26*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x40,0x00,0x20,0x00,0x20,0x00,/*";",27*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,/*"<",28*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"=",29*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*">",30*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x03,0x18,0x06,0x04,0x0C,0x04,0x0C,0x0C,0x0C,0x0C,0x0C,0x00,0x07,0x80,0x01,0x40,0x00,0x40,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"?",31*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x18,0x03,0x0C,0x02,0xCC,0x05,0x64,0x05,0x66,0x05,0xA6,0x05,0xB6,0x04,0xB6,0x04,0xB6,0x04,0xB6,0x04,0xB6,0x02,0xE4,0x01,0x0C,0x04,0x0C,0x02,0x18,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"@",32*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x50,0x00,0xD0,0x00,0x90,0x00,0x90,0x00,0x88,0x00,0x88,0x01,0x08,0x01,0xF8,0x01,0x04,0x03,0x04,0x03,0x04,0x02,0x02,0x02,0x02,0x06,0x0F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,/*"A",33*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x8C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x8C,0x01,0xFC,0x00,0x0C,0x03,0x0C,0x02,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x03,0xFE,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"B",34*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x03,0x18,0x03,0x0C,0x06,0x0C,0x04,0x04,0x04,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x04,0x0C,0x04,0x0C,0x02,0x18,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"C",35*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x8C,0x01,0x0C,0x03,0x0C,0x03,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x03,0x0C,0x03,0x8C,0x01,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"D",36*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x03,0x06,0x03,0x06,0x04,0x06,0x04,0x06,0x00,0x86,0x00,0x86,0x00,0xFE,0x00,0x86,0x00,0x86,0x00,0x86,0x00,0x06,0x00,0x06,0x04,0x06,0x04,0x06,0x02,0xFF,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"E",37*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x03,0x06,0x03,0x06,0x04,0x06,0x04,0x06,0x00,0x86,0x00,0x86,0x00,0xFE,0x00,0x86,0x00,0x86,0x00,0x86,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"F",38*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x18,0x01,0x0C,0x02,0x0C,0x02,0x04,0x02,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0xC6,0x0F,0x06,0x03,0x06,0x03,0x0C,0x03,0x0C,0x03,0x18,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"G",39*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0xFE,0x07,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,/*"H",40*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x03,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xFC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"I",41*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x07,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC0,0x00,0xC6,0x00,0x66,0x00,0x3C,0x00,/*"J",42*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCF,0x03,0x86,0x01,0xC6,0x00,0x46,0x00,0x26,0x00,0x16,0x00,0x36,0x00,0x2E,0x00,0x6E,0x00,0x46,0x00,0xC6,0x00,0x86,0x00,0x86,0x01,0x06,0x01,0x06,0x03,0x8F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"K",43*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x04,0x06,0x04,0x06,0x02,0xFF,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"L",44*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x86,0x03,0x86,0x03,0x8E,0x03,0x8E,0x03,0x4E,0x03,0x4E,0x03,0x4A,0x03,0x5A,0x03,0x5A,0x03,0x3A,0x03,0x32,0x03,0x32,0x03,0x32,0x03,0x12,0x03,0x87,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"M",45*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x8E,0x0F,0x0C,0x02,0x1C,0x02,0x1C,0x02,0x34,0x02,0x34,0x02,0x64,0x02,0x64,0x02,0x44,0x02,0xC4,0x02,0x84,0x02,0x84,0x03,0x84,0x03,0x04,0x03,0x04,0x03,0x1F,0x02,0x00,0x00,0x00,0x00,0x00,0x00,/*"N",46*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x98,0x01,0x0C,0x03,0x0C,0x02,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x02,0x0C,0x03,0x98,0x01,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"O",47*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x06,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x86,0x03,0xFE,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"P",48*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x98,0x01,0x0C,0x03,0x0C,0x02,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x76,0x06,0x4C,0x02,0xCC,0x03,0x98,0x01,0xF0,0x00,0x80,0x07,0x00,0x03,0x00,0x00,/*"Q",49*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x01,0x06,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x03,0xFE,0x00,0x46,0x00,0xC6,0x00,0x86,0x00,0x86,0x01,0x06,0x03,0x06,0x03,0x06,0x06,0x0F,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,/*"R",50*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x02,0x0C,0x03,0x06,0x02,0x06,0x02,0x06,0x00,0x0E,0x00,0x3C,0x00,0xF8,0x00,0xE0,0x03,0x80,0x03,0x00,0x07,0x02,0x06,0x02,0x06,0x06,0x06,0x0C,0x03,0xF0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"S",51*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x62,0x04,0x61,0x08,0x61,0x08,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xF8,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"T",52*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x07,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x0C,0x02,0x18,0x01,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"U",53*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x07,0x06,0x02,0x04,0x01,0x04,0x01,0x0C,0x01,0x0C,0x01,0x88,0x00,0x88,0x00,0x98,0x00,0x98,0x00,0x50,0x00,0x50,0x00,0x70,0x00,0x30,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"V",54*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0x0E,0x62,0x04,0x42,0x04,0x46,0x04,0x46,0x04,0x64,0x02,0x64,0x02,0xE4,0x02,0xE4,0x02,0x9C,0x02,0x9C,0x01,0x98,0x01,0x98,0x01,0x88,0x01,0x88,0x00,0x88,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"W",55*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9E,0x07,0x0C,0x01,0x08,0x01,0x18,0x01,0x90,0x00,0xB0,0x00,0x60,0x00,0x20,0x00,0x60,0x00,0x60,0x00,0xD0,0x00,0x90,0x00,0x88,0x01,0x08,0x01,0x04,0x03,0x8E,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"X",56*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x06,0x04,0x04,0x02,0x0C,0x02,0x08,0x01,0x18,0x01,0xB8,0x00,0xB0,0x00,0x70,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xF8,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"Y",57*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x07,0x0C,0x02,0x06,0x03,0x02,0x01,0x80,0x01,0x80,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x10,0x00,0x18,0x00,0x08,0x04,0x0C,0x04,0x04,0x02,0xFE,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"Z",58*/
0x00,0x00,0x00,0x00,0xE0,0x03,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0xE0,0x03,0x00,0x00,/*"[",59*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0xC0,0x00,0x80,0x00,0x80,0x00,0x00,0x01,0x00,0x01,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x04,/*"\",60*/
0x00,0x00,0x00,0x00,0x7C,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7C,0x00,0x00,0x00,/*"]",61*/
0x00,0x00,0x60,0x00,0x90,0x00,0x08,0x01,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,/*"^",62*/
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,0xFF,0x0F,/*"_",63*/
0x00,0x00,0x00,0x00,0x18,0x00,0x60,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,/*"`",64*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x01,0x0C,0x03,0x0C,0x03,0x00,0x03,0xE0,0x03,0x1C,0x03,0x0E,0x03,0x06,0x03,0x06,0x03,0x8E,0x0B,0x7C,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,/*"a",65*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x0E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0xCC,0x01,0x3C,0x03,0x1C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x02,0x1C,0x03,0xE4,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"b",66*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x8C,0x01,0x8C,0x01,0x86,0x01,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x02,0x0C,0x02,0x0C,0x01,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"c",67*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0xC0,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x78,0x03,0x8C,0x03,0x0C,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x04,0x03,0x8C,0x07,0x78,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"d",68*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x01,0x18,0x03,0x08,0x02,0x0C,0x06,0x0C,0x06,0xFC,0x07,0x0C,0x00,0x0C,0x00,0x18,0x04,0x18,0x02,0xE0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"e",69*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x60,0x06,0x30,0x06,0x30,0x00,0x30,0x00,0xFE,0x01,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0xFC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"f",70*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x07,0xD8,0x06,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x98,0x01,0xF8,0x00,0x0C,0x00,0xFC,0x00,0xCC,0x03,0x06,0x03,0x06,0x03,0x8E,0x03,0xF8,0x00,/*"g",71*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x0E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0xEC,0x01,0x1C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x9E,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"h",72*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x7C,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xFC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"i",73*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0xC0,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0xF0,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0xCC,0x00,0x7C,0x00,/*"j",74*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x0E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x8C,0x03,0x8C,0x00,0x8C,0x00,0x4C,0x00,0x6C,0x00,0x5C,0x00,0x8C,0x00,0x8C,0x01,0x0C,0x01,0x0C,0x03,0x9E,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"k",75*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x7C,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0xFC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"l",76*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x37,0x07,0xEE,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0x66,0x06,0xFF,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,/*"m",77*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEE,0x01,0x1C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x9E,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"n",78*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x98,0x01,0x0C,0x03,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x03,0x0C,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"o",79*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEE,0x01,0x1C,0x03,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x06,0x0C,0x03,0x1C,0x03,0xEC,0x01,0x0C,0x00,0x0C,0x00,0x3E,0x00,/*"p",80*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x02,0x8C,0x03,0x0C,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x06,0x03,0x04,0x03,0x8C,0x03,0x78,0x03,0x00,0x03,0x00,0x03,0xC0,0x07,/*"q",81*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9F,0x03,0x58,0x06,0x38,0x06,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"r",82*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x03,0x1C,0x03,0x0C,0x02,0x0C,0x02,0x38,0x00,0xF0,0x00,0xC0,0x03,0x04,0x03,0x04,0x03,0x8C,0x03,0xFC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"s",83*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x20,0x00,0x30,0x00,0x30,0x00,0xFE,0x01,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x02,0x30,0x02,0xE0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"t",84*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x02,0x8E,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x0C,0x03,0x9C,0x07,0x78,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"u",85*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x07,0x0C,0x02,0x08,0x01,0x08,0x01,0x18,0x01,0x90,0x00,0xB0,0x00,0xB0,0x00,0x60,0x00,0x60,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"v",86*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0x0E,0x62,0x04,0x46,0x04,0x64,0x02,0x64,0x02,0xEC,0x02,0x9C,0x01,0x98,0x01,0x98,0x01,0x98,0x01,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"w",87*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBC,0x07,0x18,0x01,0x10,0x01,0xB0,0x00,0x60,0x00,0x60,0x00,0xE0,0x00,0x90,0x00,0x08,0x01,0x08,0x03,0x9E,0x07,0x00,0x00,0x00,0x00,0x00,0x00,/*"x",88*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9E,0x07,0x08,0x01,0x08,0x01,0x08,0x01,0x90,0x00,0x90,0x00,0xB0,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x20,0x00,0x20,0x00,0x24,0x00,0x1C,0x00,/*"y",89*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x01,0x84,0x01,0xC4,0x00,0x44,0x00,0x60,0x00,0x20,0x00,0x30,0x00,0x18,0x02,0x08,0x02,0x0C,0x03,0xFC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"z",90*/
0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x03,0x00,0x00,/*"{",91*/
0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,/*"|",92*/
0x00,0x00,0x00,0x00,0x0C,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x0C,0x00,0x00,0x00,/*"}",93*/
0x00,0x00,0x1C,0x00,0x22,0x04,0xC2,0x04,0x80,0x03,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,/*"~",94*/
};
const uint8_t ASCII_2010_Table [] =
{
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,/*" ",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"!",1*/
0x00,0x00,0xD8,0x00,0xD8,0x00,0x6C,0x00,0x24,0x00,0x12,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,/*""",2*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x84,0x00,0x84,0x00,0x84,0x00,0xFF,0x01,0x84,0x00,0x84,0x00,0xC6,0x00,0x42,0x00,0x42,0x00,0xFF,0x01,0x42,0x00,0x42,0x00,0x42,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"#",3*/
0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0xF8,0x00,0x24,0x01,0x24,0x01,0xA4,0x01,0x28,0x00,0x30,0x00,0x60,0x00,0xA0,0x00,0x20,0x01,0x2C,0x01,0x24,0x01,0x24,0x01,0xF8,0x00,0x20,0x00,0x20,0x00,0x00,0x00,/*"$",4*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x86,0x00,0x49,0x00,0x49,0x00,0x29,0x00,0x29,0x00,0x19,0x00,0xD6,0x00,0x28,0x01,0x28,0x01,0x28,0x01,0x24,0x01,0x24,0x01,0xC2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"%",5*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x12,0x00,0x12,0x00,0x12,0x00,0xEA,0x00,0x46,0x00,0x46,0x00,0x25,0x00,0x29,0x00,0x39,0x00,0x11,0x00,0x32,0x01,0xCC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"&",6*/
0x00,0x00,0x06,0x00,0x06,0x00,0x04,0x00,0x02,0x00,0x01,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,/*"'",7*/
0x00,0x00,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x00,/*"(",8*/
0x00,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x01,0x00,0x00,0x00,/*")",9*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x20,0x00,0x26,0x03,0xAE,0x03,0x70,0x00,0x70,0x00,0xAE,0x03,0x26,0x03,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"*",10*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xFF,0x01,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"+",11*/
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,0x06,0x00,0x06,0x00,0x04,0x00,0x02,0x00,0x01,0x00,/*",",12*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"-",13*/
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,0x06,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*".",14*/
0x00,0x00,0x00,0x02,0x00,0x01,0x00,0x01,0x80,0x00,0x80,0x00,0xC0,0x00,0x40,0x00,0x60,0x00,0x20,0x00,0x30,0x00,0x10,0x00,0x18,0x00,0x08,0x00,0x08,0x00,0x04,0x00,0x04,0x00,0x02,0x00,0x00,0x00,0x00,0x00,/*"/",15*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x84,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x84,0x00,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"0",16*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x1C,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"1",17*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x82,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x01,0x02,0x01,0xFE,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"2",18*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x42,0x00,0x82,0x00,0x82,0x00,0x40,0x00,0x70,0x00,0x80,0x00,0x00,0x01,0x00,0x01,0x02,0x01,0x02,0x01,0x82,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"3",19*/
0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x60,0x00,0x50,0x00,0x48,0x00,0x48,0x00,0x44,0x00,0x42,0x00,0x42,0x00,0xFE,0x01,0x40,0x00,0x40,0x00,0x40,0x00,0xF0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"4",20*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x01,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x74,0x00,0x8C,0x00,0x00,0x01,0x00,0x01,0x02,0x01,0x02,0x01,0x82,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"5",21*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x08,0x01,0x04,0x01,0x04,0x00,0x02,0x00,0x7A,0x00,0x86,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x04,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"6",22*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x01,0x82,0x00,0x42,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"7",23*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x84,0x00,0x78,0x00,0x84,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"8",24*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x82,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x84,0x01,0x78,0x01,0x00,0x01,0x80,0x00,0x82,0x00,0x42,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"9",25*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*":",26*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,/*";",27*/
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"<",28*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"=",29*/
0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x04,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*">",30*/
0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x02,0x01,0x06,0x01,0x06,0x01,0x00,0x01,0x80,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"?",31*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xC4,0x00,0xF2,0x01,0x59,0x01,0x49,0x01,0x45,0x01,0x25,0x01,0x25,0x01,0xA5,0x00,0xD9,0x00,0x02,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"@",32*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x28,0x00,0x28,0x00,0x28,0x00,0x28,0x00,0x44,0x00,0x44,0x00,0x7C,0x00,0x44,0x00,0x82,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"A",33*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x22,0x00,0x3E,0x00,0x42,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x42,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"B",34*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x01,0x84,0x01,0x02,0x01,0x02,0x01,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x01,0x02,0x01,0x86,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"C",35*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0xC2,0x00,0x82,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x82,0x00,0x42,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"D",36*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x82,0x00,0x02,0x01,0x42,0x00,0x42,0x00,0x7E,0x00,0x42,0x00,0x42,0x00,0x02,0x00,0x02,0x00,0x02,0x01,0x82,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"E",37*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x82,0x00,0x02,0x01,0x42,0x00,0x42,0x00,0x7E,0x00,0x42,0x00,0x42,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"F",38*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x01,0x88,0x01,0x04,0x01,0x02,0x01,0x02,0x00,0x02,0x00,0x02,0x00,0x82,0x03,0x02,0x01,0x02,0x01,0x04,0x01,0x0C,0x01,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"G",39*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xFE,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"H",40*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"I",41*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x01,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x21,0x00,0x11,0x00,0x0E,0x00,0x00,0x00,/*"J",42*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE7,0x01,0x42,0x00,0x22,0x00,0x22,0x00,0x12,0x00,0x1A,0x00,0x16,0x00,0x22,0x00,0x22,0x00,0x42,0x00,0x42,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"K",43*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x01,0x82,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"L",44*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0xC6,0x00,0xC6,0x00,0xC6,0x00,0xAA,0x00,0xAA,0x00,0xAA,0x00,0xAA,0x00,0xAA,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0xD7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"M",45*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x86,0x00,0x8A,0x00,0x8A,0x00,0x8A,0x00,0x92,0x00,0x92,0x00,0xA2,0x00,0xA2,0x00,0xC2,0x00,0xC2,0x00,0xC2,0x00,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"N",46*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0xC6,0x00,0x82,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x82,0x00,0xC6,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"O",47*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x82,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x82,0x00,0x7E,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"P",48*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0xC6,0x00,0x82,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x19,0x01,0xA6,0x00,0xA6,0x00,0x78,0x00,0x40,0x01,0xC0,0x00,0x00,0x00,/*"Q",49*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x42,0x00,0x82,0x00,0x82,0x00,0x42,0x00,0x3E,0x00,0x12,0x00,0x22,0x00,0x22,0x00,0x42,0x00,0x42,0x00,0x82,0x00,0x87,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"R",50*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x01,0x84,0x01,0x02,0x01,0x02,0x00,0x02,0x00,0x0C,0x00,0x70,0x00,0x80,0x00,0x00,0x01,0x02,0x01,0x02,0x01,0x86,0x00,0x7A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"S",51*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x11,0x01,0x11,0x01,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"T",52*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x44,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"U",53*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x82,0x00,0x82,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x28,0x00,0x28,0x00,0x28,0x00,0x38,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"V",54*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBB,0x01,0x92,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0xAA,0x00,0xAA,0x00,0xAA,0x00,0x6A,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"W",55*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCE,0x01,0x84,0x00,0x44,0x00,0x48,0x00,0x28,0x00,0x30,0x00,0x10,0x00,0x30,0x00,0x28,0x00,0x48,0x00,0x48,0x00,0x84,0x00,0xCE,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"X",56*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x82,0x00,0x44,0x00,0x44,0x00,0x28,0x00,0x28,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"Y",57*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x01,0x84,0x00,0x82,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x04,0x01,0x84,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"Z",58*/
0x00,0x00,0xF0,0x01,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xF0,0x01,0x00,0x00,0x00,0x00,/*"[",59*/
0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x01,0x00,0x00,/*"\",60*/
0x00,0x00,0x3E,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,/*"]",61*/
0x00,0x00,0x38,0x00,0x28,0x00,0x44,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,/*"^",62*/
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,0xFF,0x03,/*"_",63*/
0x00,0x00,0x18,0x00,0x20,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,/*"`",64*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x82,0x00,0x82,0x00,0xF0,0x00,0x8C,0x00,0x82,0x00,0x82,0x00,0xC2,0x02,0xBC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,/*"a",65*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x3A,0x00,0x46,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x46,0x00,0x3A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"b",66*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x82,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"c",67*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xB8,0x00,0xC4,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC4,0x00,0xB8,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"d",68*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x02,0x01,0xFE,0x01,0x02,0x00,0x02,0x00,0x02,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"e",69*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x01,0x10,0x02,0x10,0x00,0x10,0x00,0xFC,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"f",70*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x01,0x84,0x00,0x84,0x00,0x84,0x00,0x84,0x00,0x78,0x00,0x04,0x00,0x7C,0x00,0x84,0x01,0x02,0x01,0x02,0x01,0xFC,0x00,/*"g",71*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x7A,0x00,0x86,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"h",72*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"i",73*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x22,0x00,0x1E,0x00,/*"j",74*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0xE2,0x00,0x22,0x00,0x12,0x00,0x0A,0x00,0x16,0x00,0x22,0x00,0x42,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"k",75*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"l",76*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0x92,0x00,0xB7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"m",77*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7B,0x00,0x86,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC7,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"n",78*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x84,0x00,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x84,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"o",79*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3B,0x00,0x46,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x46,0x00,0x3A,0x00,0x02,0x00,0x02,0x00,0x07,0x00,/*"p",80*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB8,0x00,0xC4,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC4,0x00,0xB8,0x00,0x80,0x00,0x80,0x00,0xC0,0x01,/*"q",81*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCE,0x01,0x28,0x01,0x18,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"r",82*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBC,0x00,0xC2,0x00,0x82,0x00,0x06,0x00,0x38,0x00,0xC0,0x00,0x82,0x00,0x86,0x00,0x7A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"s",83*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0xFC,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x90,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"t",84*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC3,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0x82,0x00,0xC2,0x00,0xBC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"u",85*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC7,0x01,0x82,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x28,0x00,0x28,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"v",86*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBB,0x01,0x92,0x00,0x92,0x00,0x92,0x00,0xAA,0x00,0xAA,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"w",87*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCE,0x01,0x84,0x00,0x48,0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x48,0x00,0x84,0x00,0xCE,0x01,0x00,0x00,0x00,0x00,0x00,0x00,/*"x",88*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEE,0x01,0x84,0x00,0x88,0x00,0x48,0x00,0x48,0x00,0x50,0x00,0x30,0x00,0x20,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x0C,0x00,/*"y",89*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x42,0x00,0x22,0x00,0x20,0x00,0x10,0x00,0x08,0x00,0x84,0x00,0x82,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"z",90*/
0x00,0x00,0x80,0x01,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x60,0x00,0x10,0x00,0x60,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x80,0x01,0x00,0x00,/*"{",91*/
0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,/*"|",92*/
0x00,0x00,0x06,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x18,0x00,0x20,0x00,0x18,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x06,0x00,0x00,0x00,/*"}",93*/
0x1C,0x00,0x26,0x02,0x22,0x03,0xC0,0x01,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,/*"~",94*/
};
const uint8_t ASCII_1608_Table [] =
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x18,0x18,0x00,0x00,/*"!",1*/
0x00,0x48,0x6C,0x24,0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*""",2*/
0x00,0x00,0x00,0x24,0x24,0x24,0x7F,0x12,0x12,0x12,0x7F,0x12,0x12,0x12,0x00,0x00,/*"#",3*/
0x00,0x00,0x08,0x1C,0x2A,0x2A,0x0A,0x0C,0x18,0x28,0x28,0x2A,0x2A,0x1C,0x08,0x08,/*"$",4*/
0x00,0x00,0x00,0x22,0x25,0x15,0x15,0x15,0x2A,0x58,0x54,0x54,0x54,0x22,0x00,0x00,/*"%",5*/
0x00,0x00,0x00,0x0C,0x12,0x12,0x12,0x0A,0x76,0x25,0x29,0x11,0x91,0x6E,0x00,0x00,/*"&",6*/
0x00,0x06,0x06,0x04,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"'",7*/
0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,0x00,/*"(",8*/
0x00,0x02,0x04,0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x08,0x08,0x04,0x02,0x00,/*")",9*/
0x00,0x00,0x00,0x00,0x08,0x08,0x6B,0x1C,0x1C,0x6B,0x08,0x08,0x00,0x00,0x00,0x00,/*"*",10*/
0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x7F,0x08,0x08,0x08,0x08,0x00,0x00,0x00,/*"+",11*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x04,0x03,/*",",12*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"-",13*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x00,0x00,/*".",14*/
0x00,0x00,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x02,0x02,0x00,/*"/",15*/
0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x24,0x18,0x00,0x00,/*"0",16*/
0x00,0x00,0x00,0x08,0x0E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,/*"1",17*/
0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x20,0x20,0x10,0x08,0x04,0x42,0x7E,0x00,0x00,/*"2",18*/
0x00,0x00,0x00,0x3C,0x42,0x42,0x20,0x18,0x20,0x40,0x40,0x42,0x22,0x1C,0x00,0x00,/*"3",19*/
0x00,0x00,0x00,0x20,0x30,0x28,0x24,0x24,0x22,0x22,0x7E,0x20,0x20,0x78,0x00,0x00,/*"4",20*/
0x00,0x00,0x00,0x7E,0x02,0x02,0x02,0x1A,0x26,0x40,0x40,0x42,0x22,0x1C,0x00,0x00,/*"5",21*/
0x00,0x00,0x00,0x38,0x24,0x02,0x02,0x1A,0x26,0x42,0x42,0x42,0x24,0x18,0x00,0x00,/*"6",22*/
0x00,0x00,0x00,0x7E,0x22,0x22,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,/*"7",23*/
0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x42,0x3C,0x00,0x00,/*"8",24*/
0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x64,0x58,0x40,0x40,0x24,0x1C,0x00,0x00,/*"9",25*/
0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,/*":",26*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x04,/*";",27*/
0x00,0x00,0x00,0x40,0x20,0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x20,0x40,0x00,0x00,/*"<",28*/
0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,/*"=",29*/
0x00,0x00,0x00,0x02,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x02,0x00,0x00,/*">",30*/
0x00,0x00,0x00,0x3C,0x42,0x42,0x46,0x40,0x20,0x10,0x10,0x00,0x18,0x18,0x00,0x00,/*"?",31*/
0x00,0x00,0x00,0x1C,0x22,0x5A,0x55,0x55,0x55,0x55,0x2D,0x42,0x22,0x1C,0x00,0x00,/*"@",32*/
0x00,0x00,0x00,0x08,0x08,0x18,0x14,0x14,0x24,0x3C,0x22,0x42,0x42,0xE7,0x00,0x00,/*"A",33*/
0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x1E,0x22,0x42,0x42,0x42,0x22,0x1F,0x00,0x00,/*"B",34*/
0x00,0x00,0x00,0x7C,0x42,0x42,0x01,0x01,0x01,0x01,0x01,0x42,0x22,0x1C,0x00,0x00,/*"C",35*/
0x00,0x00,0x00,0x1F,0x22,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x22,0x1F,0x00,0x00,/*"D",36*/
0x00,0x00,0x00,0x3F,0x42,0x12,0x12,0x1E,0x12,0x12,0x02,0x42,0x42,0x3F,0x00,0x00,/*"E",37*/
0x00,0x00,0x00,0x3F,0x42,0x12,0x12,0x1E,0x12,0x12,0x02,0x02,0x02,0x07,0x00,0x00,/*"F",38*/
0x00,0x00,0x00,0x3C,0x22,0x22,0x01,0x01,0x01,0x71,0x21,0x22,0x22,0x1C,0x00,0x00,/*"G",39*/
0x00,0x00,0x00,0xE7,0x42,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,/*"H",40*/
0x00,0x00,0x00,0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,/*"I",41*/
0x00,0x00,0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x11,0x0F,/*"J",42*/
0x00,0x00,0x00,0x77,0x22,0x12,0x0A,0x0E,0x0A,0x12,0x12,0x22,0x22,0x77,0x00,0x00,/*"K",43*/
0x00,0x00,0x00,0x07,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x42,0x7F,0x00,0x00,/*"L",44*/
0x00,0x00,0x00,0x77,0x36,0x36,0x36,0x36,0x2A,0x2A,0x2A,0x2A,0x2A,0x6B,0x00,0x00,/*"M",45*/
0x00,0x00,0x00,0xE3,0x46,0x46,0x4A,0x4A,0x52,0x52,0x52,0x62,0x62,0x47,0x00,0x00,/*"N",46*/
0x00,0x00,0x00,0x1C,0x22,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x22,0x1C,0x00,0x00,/*"O",47*/
0x00,0x00,0x00,0x3F,0x42,0x42,0x42,0x42,0x3E,0x02,0x02,0x02,0x02,0x07,0x00,0x00,/*"P",48*/
0x00,0x00,0x00,0x1C,0x22,0x41,0x41,0x41,0x41,0x41,0x4D,0x53,0x32,0x1C,0x60,0x00,/*"Q",49*/
0x00,0x00,0x00,0x3F,0x42,0x42,0x42,0x3E,0x12,0x12,0x22,0x22,0x42,0xC7,0x00,0x00,/*"R",50*/
0x00,0x00,0x00,0x7C,0x42,0x42,0x02,0x04,0x18,0x20,0x40,0x42,0x42,0x3E,0x00,0x00,/*"S",51*/
0x00,0x00,0x00,0x7F,0x49,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,0x00,/*"T",52*/
0x00,0x00,0x00,0xE7,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,/*"U",53*/
0x00,0x00,0x00,0xE7,0x42,0x42,0x22,0x24,0x24,0x14,0x14,0x18,0x08,0x08,0x00,0x00,/*"V",54*/
0x00,0x00,0x00,0x6B,0x49,0x49,0x49,0x49,0x55,0x55,0x36,0x22,0x22,0x22,0x00,0x00,/*"W",55*/
0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x18,0x18,0x18,0x24,0x24,0x42,0xE7,0x00,0x00,/*"X",56*/
0x00,0x00,0x00,0x77,0x22,0x22,0x14,0x14,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,0x00,/*"Y",57*/
0x00,0x00,0x00,0x7E,0x21,0x20,0x10,0x10,0x08,0x04,0x04,0x42,0x42,0x3F,0x00,0x00,/*"Z",58*/
0x00,0x78,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x78,0x00,/*"[",59*/
0x00,0x00,0x02,0x02,0x04,0x04,0x08,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x40,0x40,/*"\",60*/
0x00,0x1E,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1E,0x00,/*"]",61*/
0x00,0x38,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"^",62*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,/*"_",63*/
0x00,0x06,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"`",64*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x78,0x44,0x42,0x42,0xFC,0x00,0x00,/*"a",65*/
0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x1A,0x26,0x42,0x42,0x42,0x26,0x1A,0x00,0x00,/*"b",66*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x02,0x02,0x02,0x44,0x38,0x00,0x00,/*"c",67*/
0x00,0x00,0x00,0x60,0x40,0x40,0x40,0x78,0x44,0x42,0x42,0x42,0x64,0xD8,0x00,0x00,/*"d",68*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x7E,0x02,0x02,0x42,0x3C,0x00,0x00,/*"e",69*/
0x00,0x00,0x00,0xF0,0x88,0x08,0x08,0x7E,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,/*"f",70*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x22,0x22,0x1C,0x02,0x3C,0x42,0x42,0x3C,/*"g",71*/
0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x3A,0x46,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,/*"h",72*/
0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x0E,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,/*"i",73*/
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x22,0x1E,/*"j",74*/
0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x72,0x12,0x0A,0x16,0x12,0x22,0x77,0x00,0x00,/*"k",75*/
0x00,0x00,0x00,0x0E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,/*"l",76*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x92,0x92,0x92,0x92,0x92,0xB7,0x00,0x00,/*"m",77*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3B,0x46,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,/*"n",78*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,/*"o",79*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x26,0x42,0x42,0x42,0x22,0x1E,0x02,0x07,/*"p",80*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x44,0x42,0x42,0x42,0x44,0x78,0x40,0xE0,/*"q",81*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x77,0x4C,0x04,0x04,0x04,0x04,0x1F,0x00,0x00,/*"r",82*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x42,0x02,0x3C,0x40,0x42,0x3E,0x00,0x00,/*"s",83*/
0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x3E,0x08,0x08,0x08,0x08,0x08,0x30,0x00,0x00,/*"t",84*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x42,0x42,0x42,0x42,0x62,0xDC,0x00,0x00,/*"u",85*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x14,0x08,0x08,0x00,0x00,/*"v",86*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEB,0x49,0x49,0x55,0x55,0x22,0x22,0x00,0x00,/*"w",87*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x24,0x18,0x18,0x18,0x24,0x6E,0x00,0x00,/*"x",88*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x14,0x18,0x08,0x08,0x07,/*"y",89*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x22,0x10,0x08,0x08,0x44,0x7E,0x00,0x00,/*"z",90*/
0x00,0xC0,0x20,0x20,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0x20,0x20,0xC0,0x00,/*"{",91*/
0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,/*"|",92*/
0x00,0x06,0x08,0x08,0x08,0x08,0x08,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x06,0x00,/*"}",93*/
0x0C,0x32,0xC2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"~",94*/
};
const uint8_t ASCII_1206_Table [] =
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x00,0x04,0x00,0x00,/*"!",1*/
0x00,0x14,0x0A,0x0A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*""",2*/
0x00,0x00,0x14,0x14,0x3F,0x14,0x0A,0x3F,0x0A,0x0A,0x00,0x00,/*"#",3*/
0x00,0x04,0x1E,0x15,0x05,0x06,0x0C,0x14,0x15,0x0F,0x04,0x00,/*"$",4*/
0x00,0x00,0x12,0x15,0x0D,0x0A,0x14,0x2C,0x2A,0x12,0x00,0x00,/*"%",5*/
0x00,0x00,0x04,0x0A,0x0A,0x1E,0x15,0x15,0x09,0x36,0x00,0x00,/*"&",6*/
0x00,0x02,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"'",7*/
0x00,0x20,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x20,0x00,/*"(",8*/
0x00,0x02,0x04,0x08,0x08,0x08,0x08,0x08,0x08,0x04,0x02,0x00,/*")",9*/
0x00,0x00,0x00,0x04,0x15,0x0E,0x0E,0x15,0x04,0x00,0x00,0x00,/*"*",10*/
0x00,0x00,0x04,0x04,0x04,0x1F,0x04,0x04,0x04,0x00,0x00,0x00,/*"+",11*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x02,0x01,/*",",12*/
0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,/*"-",13*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,/*".",14*/
0x00,0x10,0x08,0x08,0x08,0x04,0x04,0x02,0x02,0x02,0x01,0x00,/*"/",15*/
0x00,0x00,0x0E,0x11,0x11,0x11,0x11,0x11,0x11,0x0E,0x00,0x00,/*"0",16*/
0x00,0x00,0x04,0x06,0x04,0x04,0x04,0x04,0x04,0x0E,0x00,0x00,/*"1",17*/
0x00,0x00,0x0E,0x11,0x11,0x08,0x04,0x02,0x01,0x1F,0x00,0x00,/*"2",18*/
0x00,0x00,0x0E,0x11,0x10,0x0C,0x10,0x10,0x11,0x0E,0x00,0x00,/*"3",19*/
0x00,0x00,0x08,0x0C,0x0A,0x0A,0x09,0x1E,0x08,0x18,0x00,0x00,/*"4",20*/
0x00,0x00,0x1F,0x01,0x01,0x0F,0x10,0x10,0x11,0x0E,0x00,0x00,/*"5",21*/
0x00,0x00,0x0E,0x09,0x01,0x0F,0x11,0x11,0x11,0x0E,0x00,0x00,/*"6",22*/
0x00,0x00,0x1F,0x09,0x08,0x04,0x04,0x04,0x04,0x04,0x00,0x00,/*"7",23*/
0x00,0x00,0x0E,0x11,0x11,0x0E,0x11,0x11,0x11,0x0E,0x00,0x00,/*"8",24*/
0x00,0x00,0x0E,0x11,0x11,0x11,0x1E,0x10,0x12,0x0E,0x00,0x00,/*"9",25*/
0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,/*":",26*/
0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x04,0x00,/*";",27*/
0x00,0x20,0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x20,0x00,0x00,/*"<",28*/
0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,/*"=",29*/
0x00,0x02,0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x02,0x00,0x00,/*">",30*/
0x00,0x00,0x0E,0x11,0x11,0x08,0x04,0x04,0x00,0x04,0x00,0x00,/*"?",31*/
0x00,0x00,0x0E,0x11,0x19,0x15,0x15,0x1D,0x01,0x1E,0x00,0x00,/*"@",32*/
0x00,0x00,0x04,0x04,0x0C,0x0A,0x0A,0x1E,0x12,0x33,0x00,0x00,/*"A",33*/
0x00,0x00,0x0F,0x12,0x12,0x0E,0x12,0x12,0x12,0x0F,0x00,0x00,/*"B",34*/
0x00,0x00,0x1E,0x11,0x01,0x01,0x01,0x01,0x11,0x0E,0x00,0x00,/*"C",35*/
0x00,0x00,0x0F,0x12,0x12,0x12,0x12,0x12,0x12,0x0F,0x00,0x00,/*"D",36*/
0x00,0x00,0x1F,0x12,0x0A,0x0E,0x0A,0x02,0x12,0x1F,0x00,0x00,/*"E",37*/
0x00,0x00,0x1F,0x12,0x0A,0x0E,0x0A,0x02,0x02,0x07,0x00,0x00,/*"F",38*/
0x00,0x00,0x1C,0x12,0x01,0x01,0x39,0x11,0x12,0x0C,0x00,0x00,/*"G",39*/
0x00,0x00,0x33,0x12,0x12,0x1E,0x12,0x12,0x12,0x33,0x00,0x00,/*"H",40*/
0x00,0x00,0x1F,0x04,0x04,0x04,0x04,0x04,0x04,0x1F,0x00,0x00,/*"I",41*/
0x00,0x00,0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x09,0x07,0x00,/*"J",42*/
0x00,0x00,0x37,0x12,0x0A,0x06,0x0A,0x0A,0x12,0x37,0x00,0x00,/*"K",43*/
0x00,0x00,0x07,0x02,0x02,0x02,0x02,0x02,0x22,0x3F,0x00,0x00,/*"L",44*/
0x00,0x00,0x1B,0x1B,0x1B,0x1B,0x15,0x15,0x15,0x15,0x00,0x00,/*"M",45*/
0x00,0x00,0x3B,0x12,0x16,0x16,0x1A,0x1A,0x12,0x17,0x00,0x00,/*"N",46*/
0x00,0x00,0x0E,0x11,0x11,0x11,0x11,0x11,0x11,0x0E,0x00,0x00,/*"O",47*/
0x00,0x00,0x0F,0x12,0x12,0x0E,0x02,0x02,0x02,0x07,0x00,0x00,/*"P",48*/
0x00,0x00,0x0E,0x11,0x11,0x11,0x11,0x17,0x19,0x0E,0x18,0x00,/*"Q",49*/
0x00,0x00,0x0F,0x12,0x12,0x0E,0x0A,0x12,0x12,0x37,0x00,0x00,/*"R",50*/
0x00,0x00,0x1E,0x11,0x01,0x06,0x08,0x10,0x11,0x0F,0x00,0x00,/*"S",51*/
0x00,0x00,0x1F,0x15,0x04,0x04,0x04,0x04,0x04,0x0E,0x00,0x00,/*"T",52*/
0x00,0x00,0x33,0x12,0x12,0x12,0x12,0x12,0x12,0x0C,0x00,0x00,/*"U",53*/
0x00,0x00,0x33,0x12,0x12,0x0A,0x0A,0x0C,0x04,0x04,0x00,0x00,/*"V",54*/
0x00,0x00,0x15,0x15,0x15,0x0E,0x0A,0x0A,0x0A,0x0A,0x00,0x00,/*"W",55*/
0x00,0x00,0x1B,0x0A,0x0A,0x04,0x04,0x0A,0x0A,0x1B,0x00,0x00,/*"X",56*/
0x00,0x00,0x1B,0x0A,0x0A,0x04,0x04,0x04,0x04,0x0E,0x00,0x00,/*"Y",57*/
0x00,0x00,0x1F,0x09,0x08,0x04,0x04,0x02,0x12,0x1F,0x00,0x00,/*"Z",58*/
0x00,0x1C,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x1C,0x00,/*"[",59*/
0x00,0x02,0x02,0x02,0x04,0x04,0x08,0x08,0x08,0x10,0x00,0x00,/*"\",60*/
0x00,0x0E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x0E,0x00,/*"]",61*/
0x00,0x04,0x0A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"^",62*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,/*"_",63*/
0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"`",64*/
0x00,0x00,0x00,0x00,0x00,0x0C,0x12,0x1C,0x12,0x3C,0x00,0x00,/*"a",65*/
0x00,0x00,0x03,0x02,0x02,0x0E,0x12,0x12,0x12,0x0E,0x00,0x00,/*"b",66*/
0x00,0x00,0x00,0x00,0x00,0x1C,0x12,0x02,0x02,0x1C,0x00,0x00,/*"c",67*/
0x00,0x00,0x18,0x10,0x10,0x1C,0x12,0x12,0x12,0x3C,0x00,0x00,/*"d",68*/
0x00,0x00,0x00,0x00,0x00,0x0C,0x12,0x1E,0x02,0x1C,0x00,0x00,/*"e",69*/
0x00,0x00,0x38,0x04,0x04,0x1E,0x04,0x04,0x04,0x1E,0x00,0x00,/*"f",70*/
0x00,0x00,0x00,0x00,0x00,0x3C,0x12,0x0C,0x02,0x1E,0x22,0x1C,/*"g",71*/
0x00,0x00,0x03,0x02,0x02,0x0E,0x12,0x12,0x12,0x37,0x00,0x00,/*"h",72*/
0x00,0x00,0x04,0x00,0x00,0x06,0x04,0x04,0x04,0x0E,0x00,0x00,/*"i",73*/
0x00,0x00,0x08,0x00,0x00,0x0C,0x08,0x08,0x08,0x08,0x08,0x07,/*"j",74*/
0x00,0x00,0x03,0x02,0x02,0x3A,0x0A,0x0E,0x12,0x37,0x00,0x00,/*"k",75*/
0x00,0x00,0x07,0x04,0x04,0x04,0x04,0x04,0x04,0x1F,0x00,0x00,/*"l",76*/
0x00,0x00,0x00,0x00,0x00,0x0F,0x15,0x15,0x15,0x15,0x00,0x00,/*"m",77*/
0x00,0x00,0x00,0x00,0x00,0x0F,0x12,0x12,0x12,0x37,0x00,0x00,/*"n",78*/
0x00,0x00,0x00,0x00,0x00,0x0C,0x12,0x12,0x12,0x0C,0x00,0x00,/*"o",79*/
0x00,0x00,0x00,0x00,0x00,0x0F,0x12,0x12,0x12,0x0E,0x02,0x07,/*"p",80*/
0x00,0x00,0x00,0x00,0x00,0x1C,0x12,0x12,0x12,0x1C,0x10,0x38,/*"q",81*/
0x00,0x00,0x00,0x00,0x00,0x1B,0x06,0x02,0x02,0x07,0x00,0x00,/*"r",82*/
0x00,0x00,0x00,0x00,0x00,0x1E,0x02,0x0C,0x10,0x1E,0x00,0x00,/*"s",83*/
0x00,0x00,0x00,0x04,0x04,0x0E,0x04,0x04,0x04,0x18,0x00,0x00,/*"t",84*/
0x00,0x00,0x00,0x00,0x00,0x1B,0x12,0x12,0x12,0x3C,0x00,0x00,/*"u",85*/
0x00,0x00,0x00,0x00,0x00,0x37,0x12,0x0A,0x0C,0x04,0x00,0x00,/*"v",86*/
0x00,0x00,0x00,0x00,0x00,0x15,0x15,0x0E,0x0A,0x0A,0x00,0x00,/*"w",87*/
0x00,0x00,0x00,0x00,0x00,0x1B,0x0A,0x04,0x0A,0x1B,0x00,0x00,/*"x",88*/
0x00,0x00,0x00,0x00,0x00,0x37,0x12,0x0A,0x0C,0x04,0x04,0x03,/*"y",89*/
0x00,0x00,0x00,0x00,0x00,0x1E,0x08,0x04,0x04,0x1E,0x00,0x00,/*"z",90*/
0x00,0x18,0x08,0x08,0x08,0x04,0x08,0x08,0x08,0x08,0x18,0x00,/*"{",91*/
0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,/*"|",92*/
0x00,0x06,0x04,0x04,0x04,0x08,0x04,0x04,0x04,0x04,0x06,0x00,/*"}",93*/
0x02,0x25,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"~",94*/
};
/*------------------------------------ 定义相关的字体参数 ---------------------------------------------*/
pFONT ASCII_Font32 = {
ASCII_3216_Table, // 字模数组地址
16, // 单个字符的字模宽度
32, // 单个字符的字模长度
64, // 单个字符的字模数据个数
0 // 该参数只有汉字字模用到,表示二维数组的行大小
};
pFONT ASCII_Font24 = {
ASCII_2412_Table, // 字模数组地址
12, // 单个字符的字模宽度
24, // 单个字符的字模长度
48, // 单个字符的字模数据个数
0 // 该参数只有汉字字模用到,表示二维数组的行大小
};
pFONT ASCII_Font20 = {
ASCII_2010_Table, // 字模数组地址
10, // 单个字符的字模宽度
20, // 单个字符的字模长度
40, // 单个字符的字模数据个数
0 // 该参数只有汉字字模用到,表示二维数组的行大小
};
pFONT ASCII_Font16 = {
ASCII_1608_Table, // 字模数组地址
8, // 单个字符的字模宽度
16, // 单个字符的字模长度
16, // 单个字符的字模数据个数
0 // 该参数只有汉字字模用到,表示二维数组的行大小
};
pFONT ASCII_Font12 = {
ASCII_1206_Table, // 字模数组地址
6, // 单个字符的字模宽度
12, // 单个字符的字模长度
12, // 单个字符的字模数据个数
0 // 该参数只有汉字字模用到,表示二维数组的行大小
};
main.c
int main(void)
{
SCB_EnableICache(); // 使能ICache
SCB_EnableDCache(); // 使能DCache
HAL_Init(); // 初始化HAL库
SystemClock_Config(); // 配置系统时钟,主频550MHz
LED_Init(); // 初始化LED引脚
USART1_Init(); // USART1初始化
SPI_LCD_Init(); // SPI LCD屏幕初始化
while (1)
{
LCD_SetAsciiFont(&ASCII_Font20); LCD_DisplayString(10, 25,"Hello!");
}
}