文章目录
一、内容
学习嵌入式实时操作系统(RTOS),以uc/OS-III为例,将其移植到stm32F103上,构建至少3个任务(task):其中两个task分别以1s和3s周期对LED等进行点亮-熄灭的控制;另外一个task以2s周期通过串口发送“hello uc/OS! 欢迎来到RTOS多任务环境!”。记录详细的移植过程。
二、uc/OS-III源码准备
网盘链接:源码 提取码:1234
下载之后如下图(uC-BSP和uC-CONFIG是新建的两个文件夹):
三、使用 stm32CubeMX 建立工程
1)新建工程
2)工程配置
①配置RCC
②配置sys
③设置PC13为GPIO_Output用于点亮LED灯
④设置串口USART1
以上配置完成后即可进行工程文件配置了;
3)导出工程
①工程文件配置
进行如下勾选即可;
②工程文件导出
点击GENERATE CODE,选择Open Project即可导出工程代码
导出后如下图所示:
四、项目准备
1)移植准备
1、为uC-BSP文件夹新建bsp.c和bsp.h文件(空文件)
2.给文件夹uC-CONFIG添加以下文件(从以下路径复制过来)
将“"Software\EvalBoards\Micrium\uC-Eval-STM32F107\uCOS-III"
”文件路径里框住的8个文件全部复制到刚才新建的 uC-CONFIG 文件夹;
复制后如下图:
3. 将 uCOS 相关文件复制到 HAL 工程的 MDK-ARM 文件夹下
首先选择“Software”文件夹中的五个文件夹,并右击复制;
然后复制到刚刚生成工程文件的路径文件夹中:
2)文件移植
1、将uCOS文件添加到项目
新建文件夹如下:
2、给新建的文件夹添加文件
①给CPU文件夹添加以下3个文件,以下添加文件皆如此;
具体路径为MDK-ARM——>uC-CPU
;
还需要添加以下三个文件:
具体路径为:MDK-ARM——>uC-CPU——>ARM-Cortex-M3——>RealView
②给LIB文件夹添加文件
首先添加以下9个文件,具体路径为:MDK-ARM——>uC-LIB
;
再添加以下一个文件,具体路径为:MDK-ARM——>uC-LIB——>Ports——>ARM-Cortex-M3——>RealView
;
③给PORT文件夹添加文件
首先添加以下3个文件,具体路径为:MDK-ARM——>uCOS-III——>Ports——>ARM-Cortex-M3——>Generic——>RealView
;
④给SOURCE文件夹添加文件
首先添加以下20个文件,具体路径为:MDK-ARM——>uCOS-III——>Source
;