![shequ.stmicroelectronics.cn](./template/st_v1/static/img/logo2.png)
RT-Thread作为国产OS之光,实际应用中总会遇到的。如何结合Cubemx快捷移植RTT呢?下面结合H533板卡简单的测试一下,然后就是举一反三了。 首先打开cubemx工具,点击help->Embeded software packages manager菜单,打开软件包管理界面,cubemx提供了离线及在线安装软件包方式,选择左下角From Url…,弹出的对话框中点击new,如图1所示:5 j$ \" g4 k$ T7 q, v. D) c6 j" k ![]() 9 v! c0 D" O# S3 y: C7 m- M( ^ 图1 输入RTT的网址,https://www.rt-thread.org/download/cube/RealThread.RT-Thread.pdsc,然后点击check,旁边显示绿色,既显示校验通过。点击OK,回到User Defined Packs Manager界面,再次点击OK。这时,CubeMx自动连接服务器,获取包描述文件,选择RT-Thread Software Components,点击install now,等待安装好后。4 c5 @& e/ Z$ {9 W4 ] % Z: Z/ L* s, b T+ G 安装好后,显示绿色。如图2所示: ![]() 图2- p Y- y+ a; D8 v' [) Z& e 然后回到主界面,选择芯片,双击进入工程参数设置。5 B- l6 }- U4 F& t/ D" g' b7 F 点击左边栏的Middleware and Software Packs->X-CUBE-RT-Thread_Nano,进入组件配置界面,选择RealThread.X-CUBE-RT-Thread_Nano,当前四个都选上,如图3所示: ![]() K, H8 s# ~! Z 图3& `9 T4 V1 ^% j8 J* O: P7 P9 T 回到主界面,在左边的菜单Middeleware and Software Packs中,再点击X-CUBE-RT-Thread_Nano,选择RTOS RT-Thread,参数默认,如图4所示: ![]() Q7 o) ?5 n. G% l; C P% @; E/ V E 图4/ G* U& F, t: u! S# N9 h 配置PA5作为输出测试引脚。配置时钟等,无需多言。 ' E+ S" p+ O) P( x5 X/ `- D 需要在NVIC中去掉三个中断,HardFault_interrupt,Pendable_request interrupt,System tick timer,如图5所示:+ d2 S% L8 C& l; k: B5 H ![]() 图5# e. B. |8 Y* y 因为RTOS使用了systick,所以为了避免冲突,SYS->Timebae Source 选择TIM15。如图6所示:7 b6 s+ ]9 M4 {% S3 Q9 J% R ![]() ' q! W% j) x0 r8 f# R 图6' u3 S& a) I- {; x5 A Z 然后配置Project Manager,Toolchain/IDE使用MDK-ARM.+ w4 ^6 ]- m/ D3 P0 r Generate code.* e2 `9 }, |; x5 B# B# P - p1 N& [; c j ~* f7 v. @6 D 在生成的main函数中添加#include "rtthread.h",编译。" n4 ]( V( w; @: W& z" R0 K * Q. G9 v! t% w; q2 A 会发现提示board.c文件中,UartHandler错误,没有定义。是因为CubeMX中没有配置这部分。回到CubeMx中,选择UART2,如图7所示& Q3 {8 s# H2 T. E0 z O ![]() 图7 按照参数进行配置即可。重新Generate code.2 h& r7 t$ L) z 编译,正常/ Z$ B. W/ K' R: D2 y) d1 {1 { 在main.c文件中添加一个线程,如下所示:$ X! t5 x ]- R, H y/ Z5 A
9 H0 r8 O' }- V- e( j& g, I main函数中启动线程,并开启调度函数,如下:
![]() + a% l, D9 x9 B) [( m 移植没啥问题了,就可以多任务模块添加了。! h, C0 m; u: R; M2 i$ v |
初学者适合看看 |
基于STM32H5的DA之初体验经验分享(带 Trust Zone)
【免费申请】高性能和低成本双Buff加持的NUCLEO H533RE,等你来!
【NUCLEO-H533RE评测】使用双存储区Flash 在不关闭系统的状态下,实现OTA
【NUCLEO-H533RE评测】高性能-全频,硬件加速在电机控制相关应用的速度对比。
【NUCLEO-H533RE评测】HASH对比测试
【NUCLEO H533RE评测分享】高性能和低成本双Buff加持的NUCLEO H533RE
【NUCLEO-H533RE评测】+加载OLED显示部件
【NUCLEO-H533RE评测】+Coremark跑分测试
【NUCLEO-H533RE评测】CmBacktrace 信息存储至FLASH
【NUCLEO-H533RE评测】串口Ymodem协议升级程序