你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32U3评测】4.初步移植ThreadX

[复制链接]
jundao721 发布时间:2025-6-23 19:24
      ThreadX 是高级工业实时RTOS,专用于深度嵌入式应用程序,实时应用程序和物联网应用程序。其提供高级计划,通信,同步,计时器,内存管理和终端管理功能。其实在使用之前已经读过ThreadX内核用户手册,对ThreadX 的使用大致有一个了解。若以前用过其他RTOS的话,会发现使用结构基本差不多,直接进入使用即可。8 W, z2 j4 I! q- ~) ^1 E
       本着先流程,再细化的原则,先使用软件将RTOS的框架搭起来,先点个灯,把使用流程熟悉了,后面再继续深入。
* H4 q) R1 S# G) b打开cubemx 发现,内部集成了ThreadX 软件包,直接安装即可。在左侧Middleware and software Packs中可以看到,如图1所示:
5 A9 a' b& }( Z9 @" Q& N5 P0 R 4-1.png
) n5 g6 ?0 Q5 f# o4 Q/ |% y图1
6 ?1 A; E% y3 R* w- P     配置项目引脚和时钟,如图2所示:
. |/ i, b- a0 w  p4 N 4-2.png
* z8 V1 u/ ^# J$ R& R; Y图2
" {- U* V( @' O4 x: ~. s    继续配置ThreadX选项,勾选Core选项,下面还需要勾选生成Generate app Init Code函数功能,如果不勾选的话,还需要自己编写任务函数。其他默认即可,配置如图3所示:7 {4 J9 z2 T8 }9 J, O3 i& Z' m
4-3.png 1 }+ B5 ~6 L! w7 T) \' H# m
图30 y. c) Q! v, T/ _. M' p, @
还需要注意一点是Tick 定时器被OS征用了,所以基本HAL延时函数使用的定时器更换成TIM7,如图4所示:  h2 Q+ l' ]! u; [
4-4.png
" u& F! v% T& G# I% s! l图45 ~2 Z. y9 H5 S( X7 Z: t) Y
    这样配置好以后,Generate 项目。这里编译环境还是选择keil。在main 任务里,编写要实现的点灯功能。如下所示:
% S* m& _3 C5 c( _. L
  1. void tx_app_thread_entry(ULONG thread_input)2 x( N; o6 }) s, u
  2. {+ K/ |. m) S5 v! f- |0 b  \  U
  3.   /* USER CODE BEGIN tx_app_thread_entry */" Z( T0 I: [8 }  X0 n/ [: _4 ~
  4.   while(1)
    9 X+ g1 Y- P  D( c0 Q6 H$ m! ?1 ~
  5.   {
    2 @( X* b) r% }1 ^
  6.     HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5);
    & T; ]; Z& \$ _. E
  7.     tx_thread_sleep(TX_TIMER_TICKS_PER_SECOND);
      W! }5 v: ?  n$ ^* v  h
  8.   }5 I0 X4 C( z* D# C# @
  9.   /* USER CODE END tx_app_thread_entry */! B/ b9 k7 O. W5 T  \7 `- ^5 G
  10. }
复制代码

& m" ~. J/ E% I1 l( V, r- n你会发现,RTOS 的大体结构基本都是一样的,编写好简单的测试任务后,直接上电Debug project, 效果如5所示:0 {5 H6 s. t- N- @9 `$ u
4-5.gif ! Q$ n0 }/ v& ?: ?" a
图5
! G( w7 o3 C6 x# ?: s) p+ e6 N8 ^# _, f9 b3 C
" n. i* `( k: D
   基本的流程熟悉以后,后面就开始测试其他功能。得实际编写测试,才能理解一些功能的应用。
8 p/ }/ g+ T1 H5 z2 U3 s' A* L
( Z) j9 M$ d" S2 F; y/ b3 V0 f$ N
赞 收藏 评论0 发布时间:2025-6-23 19:24

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版