|
RT-Thread作为国产OS之光,实际应用中总会遇到的。如何结合Cubemx快捷移植RTT呢?下面结合H533板卡简单的测试一下,然后就是举一反三了。 首先打开cubemx工具,点击help->Embeded software packages manager菜单,打开软件包管理界面,cubemx提供了离线及在线安装软件包方式,选择左下角From Url…,弹出的对话框中点击new,如图1所示:; V- N. u6 I+ w2 A: O
. w% K4 F7 j! y4 q+ a& p- _) W 图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,等待安装好后。 * t) r5 Q+ X. V! I9 {* Y7 ]: w2 h) q! a 安装好后,显示绿色。如图2所示:) [ [9 W# n$ W# e
图2 然后回到主界面,选择芯片,双击进入工程参数设置。 , Q% w5 k1 v* x- w0 Y G$ K* e" b* Q) { 点击左边栏的Middleware and Software Packs->X-CUBE-RT-Thread_Nano,进入组件配置界面,选择RealThread.X-CUBE-RT-Thread_Nano,当前四个都选上,如图3所示:2 V- X8 U. x- D6 H* j5 o' L& v4 Q
3 w2 V* e1 Q. p. ~ 图3 回到主界面,在左边的菜单Middeleware and Software Packs中,再点击X-CUBE-RT-Thread_Nano,选择RTOS RT-Thread,参数默认,如图4所示:7 K# L1 P) }- o- w) n
/ [ c( r" c! v. { }; E, F 图4 配置PA5作为输出测试引脚。配置时钟等,无需多言。# @, z0 m/ \- j# q3 V/ b1 Q* { # {9 i% ~3 s4 N7 c4 p @: N 需要在NVIC中去掉三个中断,HardFault_interrupt,Pendable_request interrupt,System tick timer,如图5所示:
图5# ~! U, |; ~9 F4 X! o 因为RTOS使用了systick,所以为了避免冲突,SYS->Timebae Source 选择TIM15。如图6所示:
图6 然后配置Project Manager,Toolchain/IDE使用MDK-ARM.# I8 e( z+ l) }. P3 E- a# u Generate code. 7 O+ K1 V. H1 v+ G0 i 在生成的main函数中添加#include "rtthread.h",编译。 + m0 ^! g& S. G/ [8 J 会发现提示board.c文件中,UartHandler错误,没有定义。是因为CubeMX中没有配置这部分。回到CubeMx中,选择UART2,如图7所示2 `7 ] [& A) b/ `
图7& p- |. d0 y0 R- B8 O3 R 按照参数进行配置即可。重新Generate code.9 A/ R1 n" N* U1 X5 q$ j; j& E+ I; m 0 t* ^4 }: I) M( f: `0 C 编译,正常 " M( \- h6 y" L4 X/ m& W4 k 在main.c文件中添加一个线程,如下所示:. P3 x+ X% j9 u2 P# z3 R+ S( Y
- Q* G0 z: w4 i6 F+ |& {/ ` main函数中启动线程,并开启调度函数,如下:
: Q, X& P# M1 F 移植没啥问题了,就可以多任务模块添加了。# T3 y& Z K9 [( M6 p# V |
|
初学者适合看看 |
STM32H5系列新品发布,为开发人员留出更多拓展空间
实战经验 | MCU复位期间PC端仍然认为USB连接未断开
新品上市 | STM32H5系列扩容,1MB Flash新品STM32H543/553助力成本性能均衡设计
【新品发布】STM32H543/H553 新品登场
【STM32U3评测】CANFD Bootloader(1)
STM32家族再添猛将:STM32H5F/E高性能系列,4MB闪存+Chrom-ART2,专为中高级图形应用而生
架构革新篇:单芯片 GUI 方案原理与核心优化技术
趋势痛点篇:嵌入式 GUI 爆发,传统存储架构的困境与挑战
【STM32U3 评测】串口控制步进电机与LabVIEW数据采集
上海/深圳 | 基于STM32H5的GUI图显应用开发线下实训
微信公众号
手机版