Dialog Semiconductor customer support - emwin LCD ROM overflow XBF font https://support.dialog-semiconductor.com/resource-keywords/emwin-lcd-rom-overflow-xbf-font en LCD--emwin-外部XBF字库如何生效 https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-software-dialog-%E2%80%9Csmartbond%E2%80%9D%E7%B3%BB%E5%88%97%E4%BD%8E%E5%8A%9F%E8%80%97%E8%93%9D%E7%89%99%E2%80%94%E8%BD%AF%E4%BB%B6/lcd-emwin

Dialog您好:

我现在使用DA14695 Pro开发板开发基于emwin的lcd文字显示功能,遇到如下两个error:

(1)section `.text' will not fit in region `ROM' (2)region `ROM' overflowed by 45296 bytes

查找了相关的问题记录找到:https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl... 这个相似的问题记录,判断应该是我调用了 "GUI_DispString("xxxx");" 函数导致字库被烧录进入Rom导致overflow。然后又按照 AN-B-074: DA1469x emWin Graphic Library and GUI section10,指导将自己生成的XBF字库 使用Smartsnippets Tools 烧录到了flash里面,再emwin相关的Font设置中按照指导设置如下:

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

#define USE_XBF_FONT 1
#if USE_XBF_FONT
static GUI_XBF_DATA * pDataXBF;
static USERDATA_EXTERNAL_RESOURCES UserDataXBF;
static GUI_FONT * pFontXBF;
#endif

#if USE_XBF_FONT
// Prepare data required to retrieve the font information from the flash partition
UserDataXBF.Offset = PARTITION_OFFSET_XBF_FONT;
UserDataXBF.PartitionID = PARTITION_ID_XBF_FONT;

// Retrieve the custom font stored in FLASH
_XBFCreateFont(&pFontXBF, &pDataXBF, XBF_FONT_TYPE, &UserDataXBF);
#endif

GUI_Init();
GUI_SetFont(pFontXBF);

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

但是还是报:

(1)section `.text' will not fit in region `ROM' (2)region `ROM' overflowed by 45296 bytes

overflow的ROM 字节数都是一样的也就是说默认的字库也被同时烧写进去了,请问如何解决以上问题?

---期待回复,非常感谢----

两个错误

Device: 
Thu, 05 Nov 2020 03:06:19 +0000 songshuwp 385477年https://support.dialog-semiconductor.com https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-software-dialog-%E2%80%9Csmartbond%E2%80%9D%E7%B3%BB%E5%88%97%E4%BD%8E%E5%8A%9F%E8%80%97%E8%93%9D%E7%89%99%E2%80%94%E8%BD%AF%E4%BB%B6/lcd-emwin#comments