STM32F103移植ThreadX

STM32F103移植ThreadX

开始

ThreadX是一个经过了多重安全认证的RTOS,最近微软把ThreadX的源码开源了,可谓广大嵌入式开发者的福音。GitHub下载地址.
以下是ThreadX及其所有中间件的安全认证等级,至今没有一款小型RTOS可以与其匹敌。
(1)医疗 - FDA510(k),IEC-62304 Class C,IEC-60601,ISO-14971
(2)工业 - UL-1998,IEC-61508 SIL 4
(3)运输/铁路 - EN50128 SIL 4,BS50128, 49CFR236,IEC-61508
(4)航空航天设备 - DO-178B,ED-12B,DO-278
(5)汽车 - IEC-61508 ASIL D
(6)核应用 - IEC-61508
(7)家电 - UL/IEC 60730/60335
由于ThreadX前期一直的商业开源的,相关资料都比较少,国内安富莱论坛的硬汉哥对ThreadX做了STM32的一直,但没有移植到STM32F1系列的。本文将模范硬汉哥,将ThreadX一直到STMF1的Keil工程上。附带安富莱的工程模板传送门.

准备

  1. F103的工程模板
  2. ThreadX的源码
  3. MDK5.30以上

之所以要用MDK5.30以上的版本是因为ThreadX的源码只提供GNU的ports文件,而MDK5.30可以自动链接GNU的ports文件,这个省去了自己修改的麻烦。

实施

修改文件

将ThreadX的文件夹复制到需要移植的工程路径下,在工程中添加common里面的.c文件和prots里面的.s文件,其中prots选择里面m3文件夹下的.s代码,tx_vector_table_sample.S不用添加。

添加文件后,工程需要勾选Use MicroLIB.
STM32F103移植ThreadX

文件添加完毕之后开始编译,