搜索
您的当前位置:首页正文

将 uC/OS III 移植到 STM32开发板

来源:二三娱乐

操作软件平台:Keil uVision5, Mac下的Windows10虚拟机

OK!开始吧!

选择这个版本进行下载,下载需要先注册登陆Micrium.

在LED流水灯 >User下面新建一个APP文件夹 和一个BSP文件夹,

将Micrium源码里的Micrium>Software>EvalbBoards>Micrium>uC-Eval-STM32F107>uCOS-III里的如下文件拷贝到APP文件夹中,

将Micrium源码里的Micrium>Software>EvalbBoards>Micrium>uC-Eval-STM32F107>BSP里的bsp.c和bsp.h拷贝到BSP文件夹里,

下一步将Micrium>Software>uC-CPU,uC-LIB,uCOS-III拷贝到LED流水灯>User目录下,这三个文件下每个文件夹下都有两个这样的GNU,IAR文件是多余的,由于Keil MDK仅使用到RealView编译器,所以这两个无关编译器文件可以删掉

然后将User文件夹下的led文件夹剪切到BSP文件夹里面,并且删除main.c文件.

第四步:用Keil打开工程文件,移除废弃文件

第五步:给工程添加如下组件

为APP添加\User\APP下的所有文件

文件类型要选All files

为BSP组件添加\User\BSP文件夹下所有文件和\User\BSP\led下的.c文件

为uC/CPU组件添加\User\ uC-CPU文件夹下的所有文件和\User\ uC-CPU\ARM-Cortex-M3\ RealView文件夹下的所有文件

为uC/LIB组件添加\User\ uC-LIB文件夹下的所有文件和\User\ uC-LIB\Ports\ARM-Cortex-M3\ RealView文件夹下的所有文件

为uC/OS-III Source组件添加\User\ uCOS-III\ Source文件夹下的所有文件。

为uC/OS-III Port组件添加\User\uCOS-III\Ports\ARM-Cortex-M3\Generic\RealView文件夹下的所有文件。

第六步:打开“Options for Target”窗口,给工程添加包含路径

第七步:编译项目, 发现有两个错误, 别慌!

第八步:修改:

将<stm32f10x_lib.h>改成<stm32f10x.h>

在startup_stm32f10x_hd.s中做如下两处修改

在cpu_cfg.h中的修改CPU_CFG_TS_32_EN,将其改为使能.

同样在cpu_cfg.h中,

在bsp.h中修改如下头文件,

同样bsp.h中头文件段落以下代码全部删掉,只保留两个函数原型声明删完是这样的

在bsp.c中删掉如下两个驱动函数,并修改初始化函数.

同时在bsp.c中做以下修改,

在app_cfg.h中,将APP_CFG_SERIAL_EN改为DEF_DISABLED

在app.c中,删除BSP_InitDisAll();

并在起始任务函数中修改控制LED亮灭的函数

app.c中如下这两个函数声明及其函数体都删掉,因为这两个函数的函数体是空的,且这两个函数没有被使用,

然后编译就没有错误啦!

第九步:

然后打开 mcuisp 软件,配置如下:

1搜索串口,设置波特率 115200(尽量不要设置的太高) 

2选择要下载的 HEX 文件

3校验、编程后执行

4DTR 低电平复位,RTS 高电平进入 bootloader

5开始编程。(如果出现一直连接的情况,按一下开发板的复位键即可)

这就是一个简单的能在STM32开发板上面跑起来的例程, 接下来你就可以发挥你的想象力和编码能力啦, 想做什么就自己动手吧!!

(本篇文章参考野火教程资料,如侵联)

Top