1

我正在使用 STM32F207VC 控制器。我正在使用 uvision4 IDE,当我尝试编译一个简单的代码时,我收到错误 tst1.axf: Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f2xx.o)。. 我已将 stm32f2x 文件放置到我的项目目录中。

但仍然是同样的问题。

请帮助解决这个问题。

谢谢

4

3 回答 3

6

需要添加“Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c”,如SystemInit()其中定义的那样。

于 2013-05-09T05:30:50.417 回答
3

好吧,您应该定义(或从某个地方获取)函数 SystemInit,因为它是从 startup.s 文件中调用的。

或者您可以在调用 SystemInit 函数的启动文件中注释行。会有类似的东西:

1 IMPORT  SystemInit
2 IMPORT  __main
3 LDR     R0, =SystemInit
4 BLX     R0
5 LDR     R0, =__main
6 BX      R0

您可以使用 ; 注释第 1、3、4 行。象征。

实际上,函数 SystemInit 通常是 STM Peripheral 库的一部分,它旨在初始化您需要的所有外围设备。没有它,您将不得不自己进行初始化。

于 2012-11-20T17:34:45.267 回答
0

可能为时已晚,但是:您应该检查 Keil uVision 安装文件夹,并且所有(我希望)供应商都有带有 SystemInit 功能的文件:)

~\Keil\ARM\Startup\ST\STM32F2xx\system_stm32f2xx.c

于 2015-07-12T21:42:51.270 回答