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

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

[复制链接]
STMCU小助手 发布时间:2021-12-3 16:00
1.预备工作:
( _  [# y  Q/ K, x8 H4 x3 j+ I        I、首先准备源代码
; i. }! h) T- I: _/ t% r       搭建一个STM32的编译环境,这里使用的是Keil MDK 5.2.9的IDE。
$ W( [9 t: n/ G" D" x. l. c# ]' p8 H2 r5 s
2.开始移植
2 R/ }: [8 g, h, V- [                 将RT-Thread的源码和HAL代码放在工程目录下,用keil IDE导入HAL代码和RT-Thread的代码,效果就是下面这个样子
1 t9 V2 V( C" d3 R9 U# [3 K/ @8 Z2 [0 h
20201209235716880.png
9 O# E7 t% b" W$ z  Y( a8 R! [- h* f

$ u4 ^: {2 u9 J0 S0 l
6 }/ i8 }: U: w$ h5 w) K. \6 u0 i/ x" T4 e9 ?5 U: l) Y6 y* k) y
3.将RT-Thread的Nano控制台重定向到UART1,可以选择其他的UART,这里作为示例。
% G2 Q% i4 `9 ~7 Z              I、添加初始化函数接口到:rt_hw_board_init()下面;/ I' d# R+ C1 G* w. s& v8 ?

; v- K3 v! Q2 x$ X% T              II、增加串口的发送接口:rt_hw_console_output(),记得互斥原理发送数据,函数位于kservice.c文件中;- k$ h7 B1 X- P& |! l$ i2 t7 X

, E" e- z1 t9 l8 Q0 }& a: F7 F              III、增加串口的接收串口:rt_hw_console_getchar(),接口可以增加到board.c文件中;
6 s. p3 N, H' p: _3 T  [
. A5 e$ z. m8 r" B4.串口控制台如果要和SecureCRT之类的终端连接,需要增加以下接口
* Q1 Q8 c3 C7 q8 P& X             在void finsh_thread_entry(void *parameter)接口的第一个while(1)内部,ch获取到字符串之后,增加如下判断即可) |: M+ Y6 d3 D) b

$ _5 a6 j' S$ b- n             if(ch == 0x10d) {
7 P. X! V' J0 g7 B3 ~7 `. g: p                      ch = '\n';7 j$ M& P, Z% x1 l' H
             }
6 p( E% S4 Z7 D; f% G5 y+ ?, h+ c" W
5.移植完成的效果
# S  l) r( X6 ^4 ^4 z" G
* ^, c8 R/ n8 B; i
20201210000737766.png

% h: D0 N  f) r* q: Z# x/ O
0 l  F0 p/ U. O' H, M
收藏 1 评论0 发布时间:2021-12-3 16:00

举报

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