初级会员
- 积分
- 148
- 金钱
- 148
- 注册时间
- 2017-9-18
- 在线时间
- 40 小时
|
5金钱
小弟最近在弄xbf字库外挂到spiflash,看了安富莱的教程,字库通过font convert生成。然后通过文件合并,变成bin文件,通过串口发送,再写入flash中。看到flash地址偏移和文件大小一样,初步认为烧写是没问题的。
#define XBF_Font16BaseAdd 0x00000000
GUI_XBF_DATA XBF_Data16;
GUI_FONT XBF_Font16;void *Fontfile16;
/* Song typeface 24 */
#define XBF_Font24BaseAdd 0x0000ED58
GUI_XBF_DATA XBF_Data24;
GUI_FONT XBF_Font24;
void *Fontfile24;
-------------------------------------------以上是定义宋体16 和宋体 24-----------------------------------------------------------------------------------
static int _cbGetData16(U32 Offset, U16 NumBytes, void * pVoid, void * pBuffer)
{
// sf_ReadBuffer(pBuffer, XBF_Font16BaseAdd + Offset, NumBytes);
Nor_Flash_Read_Data( XBF_Font16BaseAdd + Offset, NumBytes, pBuffer);
return 0;
}
---------------------------------------------这个是通过spi地址偏移读取字库的数据--------------------------------------------------------------------------------
void GUI_SetXBF(void)
{
GUI_XBF_CreateFont(&XBF_Font16,
&XBF_Data16,
GUI_XBF_TYPE_PROP_AA2_EXT,
_cbGetData16,
&Fontfile16);
}
-------------------------------------------------------设置创建字体-----------------------------------------------------------------------------------------------------
GUI_SetXBF();
GUI_UC_SetEncodeUTF8();
GUI_SetFont(&XBF_Font16); ==========================》调用这个接口的时候,就硬件错误了,是哪里非法指针还是越界了?哪里出了问题?
GUI_DispStringAt("苏州", x_pos, 20);
x_pos ++;
x_pos %= 300;
-------------------------------------------------------------这个是实现--------------------------------------------------------------------------------------------
有没有大神指点一二,让我迈过这个坎啊。。。。。
|
|