错误如下:
Error: L6218E: Undefined symbol __use_two_region_memory (referred from startup_stm32c031xx.o).
Error: L6218E: Undefined symbol __initial_sp (referred from entry2.o).
如图:
解决方法:该问题可能是由于第一次进行printf函数打印需要使用到c语言的函数库,在keil中编译启动文件startup.s没有编译在内,所以进行更改后再次编译,问题即可消失。
具体解决步骤如下:
首先找到startup.s文件
找到startup.s文件后打开,进行编译发现还是两个错误,如图:
将startup.s文件内容全部剪切下来:
将剪切的内容粘贴回去,再次进行编译:
两个错误 Error:L6218E 消失,问题解决。
这方法是我进行printf函数进行串口打印时发现的,希望该方法能够帮助大家解决一些实际问题。