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

【NUCLEO-H7A3ZI-Q体验】不懂理论会用系列--串口USART之“收发”篇

[复制链接]
zhdjet 发布时间:2022-6-26 17:39
前面几篇把灯学习了一番,今天来学点其它的外设-USART串口;此篇应用板载的ST-LINK V3的MCO引脚提供给主控MCU的旁路时钟源及USART3来进行串口数据的收发学习;5 B9 S* @: |" ^6 l" N. P1 u* ?

% M9 O& R  d# u7 t2 r9 x, e从原理图上可以看出USART3的RX和TX默认在引脚PD8/PD9上面;旁路时钟源为ST-Link的MCO提供的8M时钟源.5 ~5 R1 q; L0 k0 Y
1 ^7 [5 R( \9 n: i; _/ G
2022-06-26_145604.png ; L( U8 K* n* [2 C9 \9 S* o
2022-06-26_145629.png ' N! y+ s$ `4 h1 z, A$ l2 k

8 e3 \7 \* ]- {0 K 2022-06-26_145835.png
* l. p/ h/ h. n4 {8 A
1 {- }9 v1 m4 }打开cubeMX软件,进行时钟源和外设USART的设置,具体见下图:7 L$ c2 j% u! W* f- q5 {& x5 y
% c8 l3 f) z% b( \/ d
2022-06-26_145110.png ' O# z6 }! {/ y

& ?1 u; G1 m" A) o& k1、先设置引脚PD9和PD8为USART3_RX和USART3_TX
- `; ^1 H6 n7 g! r8 i8 N, C2、点击左侧的“System Core”,再点击左侧“RCC”
; B% p) S4 C% P/ l9 }+ `& O0 u3 r3、设置“High Speed Clock (HSE)”为“BYPASS Clock Source"  F1 g- x# ~2 F- m1 N0 o6 l* w

& O! I( O! H2 v3 ~ 2022-06-26_145247.png
: a+ u' Y% x9 p0 B+ }7 u) _; c2 Y: V( v$ V3 p
点击”Clock Configuration“,照上图设置时钟源;
# Q( H( S5 ]" Q( w' s. b1 c, L& f# t: h6 H; n' {1 ^6 P! b
接下来设置USART3,激活PD8\PD9的串口功能;
9 T; }# F& l& E$ j! l; G" O" Z0 x6 ?" a5 I
- p; v7 r9 G; `4 t; `* K1 F/ G% N3 K% i
2022-06-26_145418.png
6 G/ F4 E, W: z: i! t7 f9 p0 w1 D) E3 x" h# D" G
1、点击”Pinout & Configuration“,再点击”Connectivity“! ]0 X: D% E+ [# m8 P( D
2、再选中“USART3"* p# D2 S  o; f9 i7 C
3、设置”Mode“为”Asynchronous“使能USART3为异步通信) t* n# N2 e2 H0 J
4、串口的收发波特率之类的参数保持默认即可
) W+ e& u# o  A2 X- _7 B
% ]5 l5 A0 P; C, U) F% }以上设置完成后,点击”Project Manager“设置工程代码生成的相关参数并保存工程为”USRAT3":' S3 f9 e# l4 \1 r) N

* b& U/ c* D! ?4 H 2022-06-26_145505.png
9 O/ e4 L1 U& U- ^' `) ^$ B" a 2022-06-26_115151.png
+ b# f7 n% e% D6 L 2022-06-26_145519.png
  o. E8 l' `! w! t
" g, I5 ~' J% L( _$ x上面的保作完成后,即可点击“GENERATE CODE"生成工程代码,并选择打开工程;
' [+ R# ^# x( p" u* ?$ z
* d$ c+ R8 G3 X3 w1 m- Q 2022-06-26_131106.png
3 D" E8 }' ^* i: p, X% H) Y, }/ X1 _1 Q( W7 f5 E# {7 {
在MDK中打开工程后,双击打开”main.c"文件,添加自动发送16进制数据的代码;( L, n/ w; |- G3 b; L

# c  d' |& ~) m$ }4 f; `& F* Q再设置板载ST-Link的下载参数如下:/ W. J7 P5 O# V3 U

. X- g) y+ J. R) |% T 2022-06-26_115244.png
- B7 r: [1 \- p0 ?2 l% [2 N
1 I1 d; b& ^+ ?* l5 Z# B0 i9 A 2022-06-26_115327.png   @% t3 P5 ?- K1 L
; B% O' b3 m5 ^& g
编译成功并下载到板卡,打开串口调试助手,选择COM串口为ST-LINK的虚拟串口号,并打开串口,即可看到运行的效果:8 u3 R0 f* l, w- t! m

$ _% s  ?" m! l 2022-06-26_142408.png
6 C+ M. q9 N* Y9 D, V: v( W: d. T; z5 Z' Y
串口自动发送从00-2E的16进制数据并循环,说明USART3设置成功;
) Y. {& Q/ q0 J* G& S: z4 Q& _0 @. o' e' m3 }8 W5 q! B% i( [" c
接下来在上面的基础上修改代码为手工发送字符的代码并运行;3 v; c( \* t: e: [

$ C( I' X) a* f' V: ]$ G) |& S. z* H 2022-06-26_140152.png 3 T, V* l: V$ |

- Y8 R5 \* K8 S+ L编译下载,打开串口调试助手,并打开ST-Link的虚拟串口,并在发送窗口输入"test",并发送,运行效果如下:* {+ w  a$ G* b8 K4 L7 C

% F6 i" ?; m6 X. v: ~ 2022-06-26_141759.png 2 E  `8 W, i% S4 {8 S
% _7 k9 S5 |9 P# H, v% `
代码附件:, B: n% i; K4 G
) \0 q. Y  y" ~0 i9 b
USART3.rar (877.86 KB, 下载次数: 15)
赞 1 收藏 评论0 发布时间:2022-6-26 17:39

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版