STM32
直播中

ejlwj

9年用户 979经验值
擅长:处理器/DSP
私信 关注
[问答]

STM32F407+uCOSIII+STL库能正常工作吗?

RT,F407VE+原子哥的uCOSIII移植模版,能正常工作。如果添加了map变量(#include   std::map g_tskMap1;),就不能正常工作了。表现为:debug模式下不能直接跳转到main函数,而是会停在LDR R0, =SystemInit,连续点几次Run按钮后,才能进入main函数,然后能正常工作(LED灯按程序闪烁)。如果刷完程序直接按复位键重启,LED不闪烁,程序无法运行。

回帖(1)

从未拥有

2024-4-30 17:18:38
STM32F407 + uCOS-III + STL库在理论上是可以正常工作的。但是,根据您的描述,您遇到了一些问题。这些问题可能是由于以下几个原因导致的:

1. 配置问题:确保您的uCOS-III移植模板和STM32F407的配置是正确的。这包括时钟设置、内存分配等。

2. 编译器问题:确保您使用的编译器支持C++11或更高版本,因为std::map是C++11的一个特性。

3. 链接问题:确保您的项目链接了正确的库文件,包括uCOS-III和STL库。

4. 代码问题:检查您的代码,确保没有语法错误或逻辑错误。这可能包括错误的变量声明、内存泄漏等。

5. 中断问题:在uCOS-III中使用中断时,需要确保中断处理函数是可重入的。这可能会影响到程序的正常运行。

为了解决您遇到的问题,您可以尝试以下步骤:

1. 检查您的uCOS-III移植模板和STM32F407的配置,确保它们是正确的。

2. 确保您的编译器支持C++11或更高版本,并在项目设置中启用C++11支持。

3. 检查您的项目链接设置,确保链接了正确的库文件。

4. 仔细检查您的代码,查找可能的语法错误或逻辑错误。

5. 如果您在代码中使用了中断,请确保中断处理函数是可重入的。

6. 尝试在debug模式下逐步执行代码,观察程序的行为,以便找到可能导致问题的部分。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分