UCOSII在STM32F407上的移植
1、ucosii移植准备工作
1.1准备基础工程:
移植的时候需要一个基础工程,为了方便起见我们就选取跑马灯实验,作为ucossii移植的基础工程。
1.2Ucossii源码:
1)Micrium官网下载
2)开发板光盘自带
2、Ucossii移植步骤
1)step1
在基础工程文件夹中先建立UCOSII文件夹,然后在基础工程中UCOSII下建立相应的文件夹:CONFIG、CORE和PORT。
2)step2
向core文件夹中添加文件,
3)step3
向CONFIG文件夹中添加文件,
4)step4
向PORT文件件中添加文件,
5)step5
将Ucosii源码添加到工程中,打开工程,选择
新建三个分组:
往分组里面添加文件,CORE
PORT
CONFIG
结果如下
把头文件路径添加进去,
编译后出现如下错误
这个文件没用到,可以注释掉
再编译,又有一个错误
这个中断服务函数完成上下文切换,一般都是用汇编来编写的,
把stm32f4xx_it.c里面的函数注释掉
再编译就没有错误了。
6)step6
修改sys.h文件
再编译会出现错误
再编译,没有错误
因为F4系列会有FPU浮点运算单元:
应该改为
重复定义了,不应该定义去掉__FPU_PRESENT=1
再编译,没有错误,
2.文件作用
1、CONFIG中文件
os_cfg.h文件很重要的一些系统相关的宏定义,主要用于系统的裁剪等。
2)PORT中的文件
注意多参考STM32的参考资料
3)CORE中的文件
4)整个架构
红色部分为整个源码部分,跟CPU无关的,
绿色部分与应用程序相关的代码
蓝色部分与移植相关的部分
3、测试软件是否移植成功
1)创建一个start_task任务,start任务用来创建其他任务。
2)创建一个led0_task任务,用来控制LED0的亮灭
3)创建一个led1_task任务,用来控制LED1的亮灭
4)创建一个float_task任务,用来测试浮点计算。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】