|
RT-Thread作为国产OS之光,实际应用中总会遇到的。如何结合Cubemx快捷移植RTT呢?下面结合H533板卡简单的测试一下,然后就是举一反三了。0 Q2 W, [- i; E4 E& m s# y 首先打开cubemx工具,点击help->Embeded software packages manager菜单,打开软件包管理界面,cubemx提供了离线及在线安装软件包方式,选择左下角From Url…,弹出的对话框中点击new,如图1所示:
! L _8 M& y9 a" \# g 图11 M0 K: \& J/ A& u9 s" o6 ^0 l 输入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,等待安装好后。 安装好后,显示绿色。如图2所示:
图20 J! W6 g- A( d6 ]* t4 p5 j 然后回到主界面,选择芯片,双击进入工程参数设置。; w) {9 q6 ^' [; s1 U* }0 M7 C6 U & G0 Z8 f! L H' V _ 点击左边栏的Middleware and Software Packs->X-CUBE-RT-Thread_Nano,进入组件配置界面,选择RealThread.X-CUBE-RT-Thread_Nano,当前四个都选上,如图3所示:
4 d6 S+ y! A, F7 ^% E 图38 ]" x& w- K/ R3 S( E9 T; v 回到主界面,在左边的菜单Middeleware and Software Packs中,再点击X-CUBE-RT-Thread_Nano,选择RTOS RT-Thread,参数默认,如图4所示:, B2 q& a* t2 w6 w1 J6 x' R$ D) b/ [& `
图4 配置PA5作为输出测试引脚。配置时钟等,无需多言。 需要在NVIC中去掉三个中断,HardFault_interrupt,Pendable_request interrupt,System tick timer,如图5所示:
. d2 x; ~0 O% \$ X, |- p/ G0 f7 y 图5 因为RTOS使用了systick,所以为了避免冲突,SYS->Timebae Source 选择TIM15。如图6所示:4 e' k$ E8 [: J( b& _
7 Q; V" c4 v8 I" x3 l' ?( @% x3 a 图6 然后配置Project Manager,Toolchain/IDE使用MDK-ARM., z* u+ z# b. n2 R; |9 f' ?' Q' [9 U( A Generate code.1 X$ N: }" j9 y' _) E( M 8 T- F' A |. n! f+ ?- Z 在生成的main函数中添加#include "rtthread.h",编译。 9 l. k1 k( C1 C* v1 D4 A( h 会发现提示board.c文件中,UartHandler错误,没有定义。是因为CubeMX中没有配置这部分。回到CubeMx中,选择UART2,如图7所示
; l2 H& A. t* `( v2 b 图7 按照参数进行配置即可。重新Generate code. $ L7 K3 x$ [6 ^% n; h; w# | 编译,正常 在main.c文件中添加一个线程,如下所示:( S5 E0 H) { J# L2 J3 j
) U' K; R2 u7 q7 h; G main函数中启动线程,并开启调度函数,如下:
, V7 T' \9 e; m3 Z/ n4 { 移植没啥问题了,就可以多任务模块添加了。 |
|
初学者适合看看 |
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图显应用开发线下实训
微信公众号
手机版