Files
hisi_SS524V100_SDK/mpp/sample/gfbg/ascii32x32.c
T

262 lines
9.1 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*********************************************************************************************
* File: AscII8x16.c
* Author: embest
* Desc: Ascii table in 8x16 dot lattice
* History:
*********************************************************************************************/
#include "typedef.h"
#include <stdlib.h>
#include <string.h>
/*------------------------------------------------------------------------------------------*/
/* constant define */
/*------------------------------------------------------------------------------------------*/
#define G_AUC_ASCII_LEN 4096
const u8 g_ucAscii32x32[]= {
//左(0) 右(1) 履(2) 带(3)
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x08,0x00,0x00,0x00,0x0E,0x00,0x00,
0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x00,
0x00,0x0C,0x00,0x20,0x00,0x0C,0x00,0x70,
0x1F,0xFF,0xFF,0xF8,0x00,0x18,0x00,0x00,
0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,
0x00,0x10,0x00,0x00,0x00,0x30,0x00,0x00,
0x00,0x30,0x00,0x00,0x00,0x20,0x00,0x00,
0x00,0x60,0x01,0x80,0x00,0x5F,0xFF,0xC0,
0x00,0xC0,0x60,0x00,0x00,0x80,0x60,0x00,
0x01,0x80,0x60,0x00,0x01,0x00,0x60,0x00,
0x02,0x00,0x60,0x00,0x06,0x00,0x60,0x00,
0x04,0x00,0x60,0x00,0x08,0x00,0x60,0x00,
0x10,0x00,0x60,0x00,0x20,0x00,0x60,0x30,
0x03,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"左",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x02,0x00,0x00,0x00,0x03,0x80,0x00,
0x00,0x03,0x00,0x00,0x00,0x03,0x00,0x00,
0x00,0x06,0x00,0x10,0x00,0x06,0x00,0x38,
0x3F,0xFF,0xFF,0xFC,0x00,0x04,0x00,0x00,
0x00,0x0C,0x00,0x00,0x00,0x08,0x00,0x00,
0x00,0x18,0x00,0x00,0x00,0x10,0x00,0x00,
0x00,0x30,0x00,0x00,0x00,0x20,0x00,0xC0,
0x00,0x7F,0xFF,0xE0,0x00,0xF0,0x00,0xC0,
0x00,0xB0,0x00,0xC0,0x01,0xB0,0x00,0xC0,
0x03,0x30,0x00,0xC0,0x06,0x30,0x00,0xC0,
0x0C,0x30,0x00,0xC0,0x18,0x30,0x00,0xC0,
0x20,0x30,0x00,0xC0,0x00,0x30,0x00,0xC0,
0x00,0x30,0x00,0xC0,0x00,0x3F,0xFF,0xC0,
0x00,0x30,0x00,0xC0,0x00,0x30,0x00,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"右",1*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x04,0x00,0x00,0x20,0x03,0xFF,0xFF,0xF0,
0x02,0x00,0x00,0x30,0x02,0x00,0x00,0x30,
0x03,0xFF,0xFF,0xF0,0x02,0x10,0x40,0x20,
0x02,0x18,0x70,0x00,0x02,0x18,0x60,0x20,
0x02,0x30,0xFF,0xF0,0x02,0x20,0xC0,0x00,
0x02,0x40,0xC0,0x00,0x02,0x89,0x7F,0xF0,
0x02,0x1D,0x60,0x60,0x02,0x1A,0x7F,0xE0,
0x02,0x30,0x60,0x60,0x06,0x30,0x60,0x60,
0x06,0x70,0x60,0x60,0x06,0x70,0x7F,0xE0,
0x06,0xB0,0x18,0x40,0x05,0x30,0x38,0x40,
0x04,0x30,0x3F,0xE0,0x04,0x30,0x50,0xC0,
0x0C,0x30,0x89,0xC0,0x08,0x31,0x0D,0x80,
0x08,0x32,0x07,0x00,0x10,0x30,0x0F,0x00,
0x10,0x30,0x39,0xE0,0x20,0x30,0xE0,0x7C,
0x00,0x07,0x00,0x08,0x00,0x00,0x00,0x00,/*"履",2*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x41,0x04,0x00,0x00,0x71,0xC7,0x00,
0x00,0x61,0x86,0x00,0x00,0x61,0x86,0x00,
0x00,0x61,0x86,0x30,0x1F,0xFF,0xFF,0xF8,
0x00,0x61,0x86,0x00,0x00,0x61,0x86,0x00,
0x00,0x61,0x86,0x00,0x00,0x61,0x86,0x00,
0x00,0x00,0x00,0x08,0x0F,0xFF,0xFF,0xFC,
0x08,0x01,0x80,0x18,0x18,0x01,0x80,0x30,
0x38,0x01,0x80,0x60,0x01,0x01,0x80,0x80,
0x00,0xFF,0xFF,0xC0,0x00,0x81,0x81,0x80,
0x00,0x81,0x81,0x80,0x00,0x81,0x81,0x80,
0x00,0x81,0x81,0x80,0x00,0x81,0x81,0x80,
0x00,0x81,0x81,0x80,0x00,0x81,0x81,0x80,
0x00,0x81,0x9F,0x80,0x00,0x81,0x87,0x80,
0x00,0x81,0x83,0x00,0x00,0x01,0x80,0x00,
0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,/*"带",3*/
0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,
0xC0,0x06,0x00,0x40,0x07,0xFF,0xC0,0x06,
0x00,0x40,0x06,0x00,0x40,0x07,0xFF,0xC0,
0x06,0x00,0x44,0x7F,0xFF,0xFE,0x00,0x00,
0x00,0x07,0xFF,0xE0,0x04,0x18,0x60,0x07,
0xFF,0xE0,0x04,0x18,0x60,0x04,0x18,0x60,
0x07,0xFF,0xE0,0x04,0x18,0x60,0x1F,0xFF,
0xF0,0x00,0x18,0x00,0x00,0x18,0x04,0x7F,
0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,/*"?,1*/
0x00,0x00,0x00,0x00,0x40,0x00,0x00,0xE0,
0x00,0x00,0xC1,0x00,0x01,0xFF,0x80,0x03,
0x03,0x00,0x06,0x02,0x00,0x0F,0xFF,0xF0,
0x10,0x00,0x30,0x20,0x00,0x30,0x03,0xFF,
0xF0,0x00,0x00,0x30,0x00,0x00,0x30,0x00,
0x00,0x30,0x07,0xFF,0xF0,0x00,0x30,0x30,
0x01,0x0C,0x00,0x01,0x84,0x10,0x09,0x84,
0x8C,0x09,0x80,0x8C,0x39,0x80,0x84,0x01,
0x80,0xC0,0x00,0xFF,0xC0,0x00,0x00,0x00,/*"?,2*/
0x00,0x00,0x00,0x00,0x04,0x00,0x06,0x06,
0x00,0x04,0x02,0x08,0x05,0xFF,0xFC,0x0C,
0x00,0x00,0x08,0x3F,0xE0,0x0C,0x20,0x20,
0x18,0x20,0x20,0x18,0x3F,0xE0,0x28,0x20,
0x20,0x28,0xFF,0xFC,0x49,0x00,0x08,0x09,
0x00,0x08,0x08,0x7F,0xF0,0x08,0x03,0x00,
0x08,0x03,0x00,0x08,0x03,0x00,0x08,0x03,
0x00,0x08,0x03,0x00,0x08,0x03,0x00,0x08,
0x0E,0x00,0x08,0x06,0x00,0x00,0x00,0x00,/*"?,3*/
0x00,0x00,0x00,0x01,0x01,0x00,0x11,0x11,
0x80,0x09,0x11,0x00,0x0D,0x23,0x00,0x09,
0x42,0x00,0x3F,0xFB,0xFC,0x03,0x06,0x10,
0x07,0xC6,0x10,0x05,0x26,0x10,0x09,0x3A,
0x30,0x31,0x0A,0x30,0x41,0x01,0x30,0x03,
0x01,0x20,0x7F,0xF1,0x20,0x06,0x21,0xE0,
0x04,0x20,0xC0,0x0E,0x40,0xC0,0x01,0xE1,
0xE0,0x01,0xB3,0x30,0x06,0x16,0x1C,0x18,
0x18,0x0C,0x60,0x20,0x00,0x00,0x00,0x00,/*"?,4*/
0x00,0x00,0x00,0x01,0x02,0x00,0x01,0x83,
0x00,0x03,0x02,0x00,0x03,0x02,0x00,0x02,
0x02,0x00,0x06,0x7F,0xF8,0x04,0x06,0x00,
0x0E,0x04,0x00,0x0E,0x04,0x00,0x16,0x04,
0x00,0x17,0xFF,0xFC,0x26,0x0C,0x00,0x46,
0x0C,0x00,0x06,0x08,0x10,0x06,0x1F,0xF8,
0x06,0x08,0x30,0x06,0x00,0x60,0x06,0x00,
0x40,0x06,0x08,0x80,0x06,0x07,0x00,0x06,
0x01,0xC0,0x06,0x00,0x60,0x04,0x00,0x20,/*"?,5*/
0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x08,
0x00,0x00,0x0C,0x00,0x07,0xFF,0xF0,0x04,
0x00,0x30,0x04,0x00,0x30,0x04,0x00,0x30,
0x04,0x00,0x30,0x07,0xFF,0xF0,0x04,0x00,
0x30,0x04,0x00,0x00,0x04,0x00,0x00,0x04,
0xFF,0xF0,0x04,0x80,0x30,0x04,0x80,0x30,
0x0C,0x80,0x30,0x08,0x80,0x30,0x08,0x80,
0x30,0x18,0x80,0x30,0x10,0xFF,0xF0,0x20,
0x80,0x30,0x40,0x80,0x20,0x00,0x00,0x00,/*"?,6*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x00,0x00,0x01,0x00,0x00,0x41,0x00,0x3F,
0xE1,0x00,0x00,0x01,0x00,0x00,0x0F,0xFC,
0x00,0x01,0x0C,0x7F,0xF1,0x0C,0x02,0x01,
0x0C,0x06,0x01,0x0C,0x04,0x01,0x08,0x0C,
0x81,0x08,0x08,0x43,0x08,0x10,0x62,0x08,
0x10,0x22,0x08,0x3F,0xF4,0x08,0x30,0x1C,
0x08,0x00,0x08,0x08,0x00,0x11,0x98,0x00,
0x60,0x70,0x00,0x80,0x20,0x00,0x00,0x00,/*"?,7*/
0x00,0x00,0x00,0x00,0x04,0x00,0x10,0x06,
0x00,0x08,0x04,0x00,0x0C,0x0C,0x08,0x0D,
0xFF,0xFC,0x00,0x08,0x00,0x00,0x13,0x00,
0x00,0x32,0x00,0x7E,0x22,0x00,0x04,0xFF,
0xF0,0x04,0x42,0x00,0x04,0x02,0x00,0x04,
0x02,0x00,0x05,0xFF,0xFC,0x04,0x02,0x00,
0x04,0x02,0x00,0x04,0x02,0x00,0x1A,0x03,
0x00,0x31,0x82,0x00,0x20,0x7F,0xFE,0x00,
0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,/*"?,8*/
0x00,0x00,0x00,0x04,0x04,0x00,0x04,0x03,
0x00,0x04,0x01,0x00,0x04,0x7F,0xF8,0x04,
0x90,0x40,0x7F,0xC8,0x60,0x04,0x0C,0x40,
0x04,0x04,0x80,0x04,0xFF,0xFC,0x04,0x02,
0x00,0x05,0x06,0x00,0x0E,0x04,0x00,0x3C,
0x04,0x04,0x65,0xFF,0xFE,0x04,0x08,0x60,
0x04,0x10,0x40,0x04,0x10,0xC0,0x04,0x0E,
0x80,0x04,0x01,0xC0,0x32,0x06,0x38,0x1C,
0x18,0x0C,0x08,0xE0,0x04,0x00,0x00,0x00,/*"?,9*/
0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x80,
0x08,0x10,0x80,0x3C,0x10,0x83,0xC0,0x14,
0x9A,0x00,0x12,0x92,0x00,0x12,0xA2,0x00,
0x10,0xC2,0x00,0x1F,0xFB,0xFC,0x11,0x86,
0x10,0x11,0xC2,0x10,0x11,0xA2,0x10,0x12,
0x92,0x10,0x12,0x9A,0x10,0x14,0x8A,0x10,
0x14,0x82,0x10,0x18,0x86,0x10,0x10,0xA4,
0x10,0x3F,0xF4,0x10,0x00,0x08,0x10,0x00,
0x10,0x10,0x00,0x20,0x00,0x00,0x00,0x00,/*"?,10*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x10,0x3F,0xFF,0xF8,0x00,0x81,0x00,0x00,
0x81,0x00,0x00,0x81,0x00,0x00,0x81,0x00,
0x00,0x81,0x00,0x00,0x81,0x00,0x00,0x81,
0x08,0x7F,0xFF,0xFC,0x00,0x81,0x00,0x00,
0x81,0x00,0x00,0x81,0x00,0x01,0x81,0x00,
0x01,0x01,0x00,0x01,0x01,0x00,0x02,0x01,
0x00,0x06,0x01,0x00,0x0C,0x01,0x00,0x10,
0x01,0x00,0x20,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x0C,
0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,
0x0C,0x00,0x00,0x0C,0x00,0x02,0x0C,0x00,
0x02,0x0C,0x10,0x02,0x0F,0xF8,0x02,0x0C,
0x00,0x02,0x0C,0x00,0x02,0x0C,0x00,0x02,
0x0C,0x00,0x02,0x0C,0x00,0x02,0x0C,0x00,
0x02,0x0C,0x00,0x02,0x0C,0x00,0x02,0x0C,
0x00,0x02,0x0C,0x08,0x7F,0xFF,0xFC,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
extern u32 g_dwLcdWidth ;
extern u32 g_dwLcdHeight ;
extern u32 g_pLCDBuffer ;
static void PutTFT16Bit_480640(u32 x,u32 y, unsigned short c)
{
// RGB32
if(x<(g_dwLcdWidth) && y<(g_dwLcdHeight))
memcpy((unsigned char*)(g_pLCDBuffer + (x+y*g_dwLcdWidth)*2), (unsigned char*)&c, 2);
}
void LCDDisplayASCII32x32(u32 x0, u32 y0, unsigned short ForeColor, char * s)
{
u32 i,j,k,x,y,xx;
u8 qm;
u32 ulOffset;
u32 ywbuf[32],temp[2];
u32 tmp;
for(i = 0; i < strlen((const char*)s); i++)
{
if(((u8)*(s+i) >= 127) || (((u8)*(s+i) <= 31)))
{
temp[0] = *(s + i);
temp[1] = '\0';
return;
}
else
{
qm = *(s+i);
qm -= 0x30;
ulOffset = (u32)(qm) * 128;
for (j = 0; j < 32; j ++)
{
tmp = j*4;
ywbuf[j] = (g_ucAscii32x32[ulOffset + tmp] << 24) | (g_ucAscii32x32[ulOffset + tmp + 1] << 16) | (g_ucAscii32x32[ulOffset + tmp + 2] <<8)|(g_ucAscii32x32[ulOffset + tmp + 3] );
//ywbuf[j] = (g_ucAscii64x64[ulOffset + tmp] << 24) | (g_ucAscii64x64[ulOffset + tmp + 1] << 16) | (g_ucAscii64x64[ulOffset + tmp + 2] <<8) | (g_ucAscii64x64[ulOffset + tmp + 3]);
}
for(y = 0; y < 32; y++)
{
for(x = 0; x < 32; x++)
{
k = x % 32;
if (ywbuf[y] & (0x8000000 >> k))
{
xx = x0 + x + i*32;
PutTFT16Bit_480640( xx, y + y0, ForeColor);
}
}
}
}
}
}