用cubemx搭建STM32U535CBTx导出工程在keil5中编译后报错如下图所示,查看源文件和函数都有添加,希望大家帮忙看下是什么原因导致报错。

用cubemx搭建STM32U535CBTx导出工程在keil5中编译后报错如下图所示,查看源文件和函数都有添加,希望大家帮忙看下是什么原因导致报错。

引自免费微信小程序:皆我百晓生
从给出的错误信息来看,你遇到的问题是链接器无法找到一些特定的符号定义,这些符号是在使用CubeMX生成代码并使用Keil进行编译时产生的。具体来说,错误提示了以下几个未定义的符号:
ux_device_stacktasks_run_ux_utility_time_get_ux_system_slave这些符号都是来自于某个库或者组件的,很可能是与你的STM32U535CBT设备以及使用到的中间件有关。为了解决这些问题,你可以尝试以下几个步骤:
确保在CubeMX中正确配置了所有相关的库和组件,特别是与这些符号有关的。可能你在CubeMX中遗漏了某些必要的配置或者没有正确配置。
在Keil中,确保你的工程配置包含了所有必要的文件和库。特别是在“Target”->“Linker”->“Configuration”中,确保所有必要的库文件都被添加到了链接器的配置文件中。此外,还需要检查库文件的路径是否正确。
确保这些符号在你的代码或者链接的库中有定义。如果它们是来自于某个中间件或者库的,确保该中间件或库已经被正确添加到工程中。有时候这些符号可能在某些特定版本的库中才有定义,因此也需要检查库的版本是否匹配。
尝试重新生成代码并重新导入到Keil中。有时候由于某些原因,生成的代码可能不完整或者存在错误,重新生成可能会解决问题。
检查CubeMX和Keil的版本是否为最新。有时候软件更新可能包含修复已知问题的补丁。
假设你的工程文件夹结构如下:
在Keil中配置工程时,你需要确保:
ux_library.lib到链接器的配置文件中。确保路径正确指向该库文件。main.c)已经被添加到工程中。如果以上步骤不能解决问题,你可能需要提供更多的信息或者详细描述你的配置情况,以便进一步分析和解决问题。