这几天在使用stm8s003MCU进行嵌入式开发,之前没用过stm8系列的MCU,在使用过程中不免遇到很多问题,本文讲述的即是开发过程中一个问题。在使用stm8s003编程过程中,使用了官方的库文件,在进行build时候,报了一个error:segment .text size overflow。经过查阅资料才发现之所以出现本错误是因为代码长度超过了MCU的flash。因为stm8s003的flash为8KB,而我的代码长度超过了8KB。实际上,在使用官方库进行编程时,官方库中好多代码实际上没有用到,所以可以将这些库中未使用到的代码函数不编译进自己写的代码。具体操作如下:
第一步,打开stvd软件,点击Project下的Settings,界面如下
第二步,点击C Compiler,选择General的d倒三角图标,出现界面如下

在STM8S003嵌入式开发中遇到.error segment .text size overflow的问题,原因是代码长度超过MCU的8KB flash限制。通过STVD软件设置,选择C Compiler -> General -> Optimizations -> Customize -> Split Function in Separate Sections,启用未使用函数不编译,避免链接未使用库函数,从而解决溢出问题。
最低0.47元/天 解锁文章
7041

被折叠的 条评论
为什么被折叠?



