管理员
最后登录1970-1-1
在线时间 小时
注册时间2013-5-3
|
发表于 2017-5-16 17:06:50
|
显示全部楼层
别看这个呀,这个HZLIB是旧版的字模,旧版字模没标点什么的,比较乱,
fonts.c文件新版用的是这样的计算公式:
- /**
- * @brief 获取FLASH中文显示字库数据
- * @param pBuffer:存储字库矩阵的缓冲区
- * @param c : 要获取的文字
- * @retval None.
- */
- int GetGBKCode_from_EXFlash( uint8_t * pBuffer, uint16_t c)
- {
- unsigned char High8bit,Low8bit;
- unsigned int pos;
-
- static uint8_t everRead=0;
-
- /*第一次使用,初始化FLASH*/
- if(everRead == 0)
- {
- SPI_FLASH_Init();
- everRead = 1;
- }
-
- High8bit= c >> 8; /* 取高8位数据 */
- Low8bit= c & 0x00FF; /* 取低8位数据 */
-
- /*GB2312 公式*/
- pos = ((High8bit-0xa1)*94+Low8bit-0xa1)*WIDTH_CH_CHAR*HEIGHT_CH_CHAR/8;
- SPI_FLASH_BufferRead(pBuffer,GBKCODE_START_ADDRESS+pos,WIDTH_CH_CHAR*HEIGHT_CH_CHAR/8); //读取字库数据
- // printf ( "%02x %02x %02x %02x\n", pBuffer[0],pBuffer[1],pBuffer[2],pBuffer[3]);
-
- return 0;
-
- }
复制代码
|
|