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

【经验分享】移植RT-Thread 3.1.3到STM32F2上

[复制链接]
STMCU小助手 发布时间:2021-12-3 16:00
1.预备工作:
  h9 R8 k" S- ~        I、首先准备源代码0 Q( h' R. r9 m. L7 w
       搭建一个STM32的编译环境,这里使用的是Keil MDK 5.2.9的IDE。5 {6 x# D# K. l: y
. Z& q& X( {6 {  ~  M7 d8 E
2.开始移植* b7 _+ i7 _4 t3 ^1 H" s
                 将RT-Thread的源码和HAL代码放在工程目录下,用keil IDE导入HAL代码和RT-Thread的代码,效果就是下面这个样子
) U: Z3 @0 Y- \, E9 _) f) `% j; J3 }5 r1 j2 V4 e/ `0 q1 s2 r1 K
20201209235716880.png

# \( A0 h; v% e3 d4 }  ?2 O9 i* O
7 h; x' s+ A# _7 B1 z- }, b. S. ^0 j. l

* H: M; n" ^" \2 U6 u7 d2 J6 V3.将RT-Thread的Nano控制台重定向到UART1,可以选择其他的UART,这里作为示例。( }. G8 U7 s& u" K: \+ p) ?. ?
              I、添加初始化函数接口到:rt_hw_board_init()下面;( w% `/ p# c; E& Q

- _1 r6 N7 t+ T% m              II、增加串口的发送接口:rt_hw_console_output(),记得互斥原理发送数据,函数位于kservice.c文件中;
7 L" |# C2 r. u: T  M& z& f  G; `8 l7 m7 n' W
              III、增加串口的接收串口:rt_hw_console_getchar(),接口可以增加到board.c文件中;
; S1 T9 b9 H1 A/ g0 h& j# ~  s5 ?& O; @, w2 A1 b
4.串口控制台如果要和SecureCRT之类的终端连接,需要增加以下接口
& V3 a. w' w: S3 Z+ e% T1 R             在void finsh_thread_entry(void *parameter)接口的第一个while(1)内部,ch获取到字符串之后,增加如下判断即可+ D/ X6 w6 b! w  c
  I- B& c7 z5 K0 m1 n9 h' U& U
             if(ch == 0x10d) {
- h, `- b( U# F! e5 p                      ch = '\n';
* W5 k9 n! O0 V! X6 }             }* a+ M" L) A' m, ?
" A. j3 d9 [' e
5.移植完成的效果6 s  ?: Z, {9 K5 c
, }" X% ?7 B# ?/ B9 X1 ?; L
20201210000737766.png
! }7 g% @3 R% O" K" ^
2 Q, }5 ~9 I% e9 x& H9 a# b
收藏 1 评论0 发布时间:2021-12-3 16:00

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版