ZBLOG

Rebuild started: Project: CarV1 *** Using Compiler 'V5.06 update 4 (build 422)', folder: 'C:\Users\Yuluoqiao\AppData\Local\Keil_v5\ARM\ARMCC\Bin' Rebuild target 'Car_Demo' compiling sys.c... compiling uart_a72.c... compiling delay.c... compiling c...

根据您提供的编译输出,您的代码在链接阶段出现了错误,具体错误信息为“Undefined symbol delay (referred from main.o)”,这意味着编译器找不到 delay 函数的定义。

这是一个常见问题,通常可以通过以下几个步骤来解决:

  1. 确保函数定义存在: 确保在项目中的某个源文件(如 delay.c)中确实有 delay 函数的实现。例如:
   void delay(uint32_t ms) {
       // 实现延迟逻辑,例如使用循环或调用硬件定时器
   }
  1. 检查头文件包含: 在 main.c 中包含定义 delay 函数的头文件。如果您将 delay 的声明放在了一个头文件中,请确保正确地包含该头文件,比如:
   #include "delay.h"  // 假设 delay.h 中有 delay() 函数的声明
  1. 函数声明: 如果您没有将 delay 的声明放在任何头文件中,可以考虑直接在 main.c 文件开头添加函数原型,如下所示:
   void delay(uint32_t ms);  // 声明 delay 函数
  1. 链接设置: 确保所有相关的源文件都已正确添加到项目中,并且在构建设置中没有排除掉它们。

  2. 检查名称拼写和大小写: C 语言是区分大小写的,因此请检查是否在其他地方使用了不同形式的名称(例如,Delay 或者其他变体)。

完成以上步骤后,尝试重新构建项目,看是否能够成功。如果仍然有问题,请检查更详细的代码或共享更多上下文,以便进一步诊断。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:http://sdn.0voice.com/?id=5821

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?