嵌入式OS入门笔记-以RTX为案例:三.修改RTX
RTX一般是由ARM-MDK链接到预编译的RL-RTX库的,但是修改RTX内核function或者是增添新的function并且在自己的工程里面编译和链接修改后的RTX都是没问题的。本篇笔记主要关于如何在利用ARM-MDK在RTX中添加一个新的function,并且在自己的工程文件里面使用这个新的function。同样地,需要安装ARM-MDK和一块硬件板,笔记以STM32F4Discovery为例子。
这部分内容可能实战中很少会用到!如果你只是应用开发,可以放心跳过。
1.从源文件到库
首先我们要找到RTX的源文件。一般来说路径是 C:\Keil\ARM\RL\RTX,这个文件夹下我们需要的有:RTX_Lib_CM.uvpot, RTX_Lib_CM, Config和SRC下的CM中的部分文件。
SRC下CM文件夹中的HAL_CM1,HAL_CM3可以删除掉,因为STM32F4Discovery用的是Cortex-M4的核。而删除的这两个文件其实是Cortex-M1,Cortex-M3的硬件抽象层(Hardware Abstraction Layer)。不同的板子需要有不同的HAL。
在工程文件夹中,新建一个文件夹,例如MyProject\RTXMod,作为修改后的RTX的源代码文件夹。复制上诉文件并粘贴进RTXMod中,注意保持其相对路径!
然后用uVision打开RTX_Lib_CM。首先注意到工程下有这些文件:
SRC下CM文件夹中的HAL_CM1,HAL_CM3可以删除掉,因为STM32F4Discovery用的是Cortex-M4的核。而删除的这两个文件其实是Cortex-M1,Cortex-M3的硬件抽象层(Hardware Abstraction Layer)。不同的板子需要有不同的HAL。
在工程文件夹中,新建一个文件夹,例如MyProject\RTXMod,作为修改后的RTX的源代码文件夹。复制上诉文件并粘贴进RTXMod中