ThreadX应用开发笔记之二:移植ThreadX到STM32H7平台

本文详细介绍了如何将实时操作系统ThreadX移植到STM32H7平台,包括前期的硬件和软件准备,系统移植的具体步骤,如修改中断处理函数、配置文件和低级别初始化,以及如何在IAREWARM环境下添加和配置ThreadX源码。在任务实现部分,讲解了如何创建和启动多个任务,通过tx_thread_create函数定义各个任务的控制块、栈空间、优先级等参数。最后,文章提到在目标平台上成功运行并展示了ThreadX的调试信息。

  前面我们将ThreadX成功移植到了STM32F4平台,但这只是我们的部分应用。我们希望将ThreadX的优势发挥到我们的更多应用中,所以在这一篇中我们就来实现将ThreadX移植到STM32H7平台中。

1、前期准备

  在开始将ThreadX移植到STM32H7平台之前,我们需要做一些软硬件方面的准备。

  首先,我们需要准备STM32H7的硬件平台。这次我们采用STM32H750VBT6为控制单元来作为目标平台。这是一款我们在实际项目中使用的,经过验证的,硬件能够稳定运行的平台。

  其次,我们需要准备相应的软件资源,也就是ThreadX的源码。ThreadX的源码已经开源到Github上,其地址为:https://github.com/azure-rtos/threadx,直接下载源码就可以了。我们将采用目前最新的版本。下载好ThreadX的源码后,我们将其解压,如下图:

  上图中一目了然,无需做太多解释。我们需要用到的文件主要存放在common文件夹和ports文件夹。其中common文件夹存放的是内核源码,ports文件夹存放的是不同平台的接口文件。我们的硬件采用的是STM32H750VBT6,软件开发环境用的是IAR EWARM,所以我们选择ports文件夹下cortex_m7下的IAR文件夹中的接口文件。

2、系统移植

  我们准备好软件硬件平台后,就可以开始系统的移植了。首先我们找到一个基础的裸机项目,能正确实现硬件的启动及时钟初始化就好了。接下来的移植工作主要包括:添加源码,修改配置等。

  第一步,我们先向项目中添加ThreadX的相关源码文件。所以我们在项目下添加ThreadX组、并在ThreadX组下添加Source和Ports两个组用于添加文件。并将common文件夹和ports文件夹中的文件添加到对应的分组。如下所示:

  然后要在项目属性中为编译器指定头文件的引用路径,主要是内核函数的头文件以及接口文件的头文件两个路径,在我们这个项目中配置如下:

  PROJDIRPROJ_DIRPROJDIR…\ThreadX\common\inc

  PROJDIRPROJ_DIRPROJ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值