跳过主要内容

如何在外部QSPI Flash中启用XBF字体?

DA1469x

8个月前

发布的songshuwp0点 1回复
0的问题

你好对话框:

我正在使用DA14695 Pro Kit开发一个LCD显示项目,利用emwin lib。出现如下两个错误:

(1)节”。text'将不适用于区域' ROM'(2)区域' ROM'溢出45296字节

通过搜索这个论坛,我发现了类似的问题如下:

https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-b..。

(*PS:我也使用" gui_disstring ("xxx")"功能,但当我使用" gui_dischar ("x")",没有错误报告.......这个错误似乎与字体......没有关系)

通过遵循指导一个- b - 074http://lpccs - docs.dialog semiconductor.com/an - b - 074 - da1469x_smartbond e..。第10节,我做了一个小尺寸XBF字体(12kb)。并使用Smartsnippets工具将其运行到QSPI Flash中,设置代码如下所示:

--------------------------------------------------------

#定义USE_XBF_FONT 1
#如果USE_XBF_FONT
static GUI_XBF_DATA * pDataXBF;
静态USERDATA_EXTERNAL_RESOURCES UserDataXBF;
static GUI_FONT * pFontXBF;
# endif

#如果USE_XBF_FONT
//准备从flash分区中检索字体信息所需的数据
UserDataXBF。抵消= PARTITION_OFFSET_XBF_FONT;
UserDataXBF。PartitionID = PARTITION_ID_XBF_FONT;

//获取存储在FLASH中的自定义字体
&pFontXBF, &pDataXBF, XBF_FONT_TYPE, &UserDataXBF);
# endif

GUI_Init ();
GUI_SetFont (pFontXBF);

GUI_DispString(“xxx”);

-------------------------------------------------------

同样的错误发生:

(1)节”。text'将不适用于区域' ROM'(2)区域' ROM'溢出45296字节

遗憾的是,溢出的大小是一样的。看来原来的字体也被烙进了芯片里。所以,你能告诉我们什么是正确的方式使用emwin func " gui_disstring ("xxx");"

-------------

期待你的回复

BR

8个月前

PM_Dialog

嗨songshuwp,

谢谢你的在线问题。正如所附的论坛票据中提到的,应用程序代码大小可能超过512KB,因此您需要遵循DA1469x支持大于512kB的图片教程。你按照建议的教程去做了吗?

如本教程所述,默认情况下,SDK和芯片配置都支持运行最大512kb大小的应用程序映像。DA1469x蓝牙SoC能够从FLASH中的任何地址执行代码。由于DA1469x的M33应用程序CPU具有重映射功能,因此支持该特性。因此,有必要配置芯片中的最大图像大小,并将图像放置在FLASH中与重新映射设置对齐的地址,如本教程后面解释的。

谢谢,PM_Dialog