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

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

[复制链接]
zhdjet 发布时间:2022-6-26 17:39
前面几篇把灯学习了一番,今天来学点其它的外设-USART串口;此篇应用板载的ST-LINK V3的MCO引脚提供给主控MCU的旁路时钟源及USART3来进行串口数据的收发学习;; c& J: i- D8 a# j3 c: x

% s9 G; l2 b* V$ K4 n: [7 x- R从原理图上可以看出USART3的RX和TX默认在引脚PD8/PD9上面;旁路时钟源为ST-Link的MCO提供的8M时钟源.# P/ P: l; X2 e5 q" O
" Z7 h! R5 h1 \& R
2022-06-26_145604.png $ v  w$ z) O- ]
2022-06-26_145629.png
$ {# n6 N  C' G7 O- q: N
: w  m9 ?8 t# _ 2022-06-26_145835.png * M0 l0 t5 R1 t0 {  M: X0 v

7 E: ?  e. z# u打开cubeMX软件,进行时钟源和外设USART的设置,具体见下图:
' {! i3 ]  r: b6 j* w# {+ `- N+ X1 I1 b4 A$ y
2022-06-26_145110.png , C! F3 @/ }. {8 ?/ W
# D% w9 S* I6 F
1、先设置引脚PD9和PD8为USART3_RX和USART3_TX% v# [: u1 s6 G
2、点击左侧的“System Core”,再点击左侧“RCC”0 q9 |2 n9 a+ k8 z+ a  t, o! P
3、设置“High Speed Clock (HSE)”为“BYPASS Clock Source"- `! B9 e- i$ @; A# [
$ u9 E5 `5 i; A# s, p; a
2022-06-26_145247.png
: o+ N& u. K9 J* s) c
% B2 L- N$ h# e3 I" {, I点击”Clock Configuration“,照上图设置时钟源;
! |- D5 g% b  D/ X* w' n
4 H4 a6 T1 \. t" {5 ?! ^! j接下来设置USART3,激活PD8\PD9的串口功能;* ?) @) Y: y% r3 f- I$ T4 O

4 W  Y8 k7 h9 D$ @
5 T, B! M2 ^6 X& b8 w0 _5 m$ a* t6 H 2022-06-26_145418.png
; i5 H1 F& J" N$ }) h) j3 s+ t1 n, D" I+ y: D
1、点击”Pinout & Configuration“,再点击”Connectivity“% r4 H9 z5 ^# I. m+ ]3 B# w5 B
2、再选中“USART3"
3 V5 A9 i  o0 @3、设置”Mode“为”Asynchronous“使能USART3为异步通信3 [9 a: ~! }- O$ ^
4、串口的收发波特率之类的参数保持默认即可
$ g4 E, U2 s5 O# P$ n& ~1 o
1 L4 S) j1 e; b以上设置完成后,点击”Project Manager“设置工程代码生成的相关参数并保存工程为”USRAT3":+ {6 |0 x) z& `9 _# u, Q7 v: x

" U/ k' S6 m* G8 |# r 2022-06-26_145505.png
: c/ O# [6 H5 ~* X5 ^5 E: V 2022-06-26_115151.png 5 ~& H+ U) g- j/ I
2022-06-26_145519.png
9 ?0 m6 F- A. D" S2 K; L( c
1 Q  w* y0 S1 J9 I( Y上面的保作完成后,即可点击“GENERATE CODE"生成工程代码,并选择打开工程;2 x6 j: ]  W5 H8 h+ t+ R. m4 E
4 D4 [* C) R% S7 U
2022-06-26_131106.png
; d6 `7 ]* ~5 K6 A
0 u+ Q* O; x+ e3 d4 F) U9 K在MDK中打开工程后,双击打开”main.c"文件,添加自动发送16进制数据的代码;2 q+ v  E) n3 z# G
1 T0 h. \6 j: G1 \
再设置板载ST-Link的下载参数如下:. O, L7 R5 b) X4 F* ]

9 X8 C( T9 U, _6 l! |6 F. p# Z5 c& [ 2022-06-26_115244.png
# U3 e. |- ?4 \( H, V) [+ ^0 d1 d, O# b, Y! _
2022-06-26_115327.png 2 @0 G7 J" R$ {! x% ?
3 X& l" d2 E" C, S( A  L7 @( H
编译成功并下载到板卡,打开串口调试助手,选择COM串口为ST-LINK的虚拟串口号,并打开串口,即可看到运行的效果:, J; r0 q: P! o" X# a
2 v) M3 s+ e. h$ i
2022-06-26_142408.png 2 F" L% D4 q2 t- r% p1 N

/ S4 C7 \0 k2 Y0 s' B串口自动发送从00-2E的16进制数据并循环,说明USART3设置成功;& W/ F# E1 K6 A: |( U
: A& o* E" i) v5 o" w! v
接下来在上面的基础上修改代码为手工发送字符的代码并运行;
0 p6 [* L# i' {" d- E' N2 _- f( Y4 U! K8 \) s( x* a
2022-06-26_140152.png ! E$ D7 ~$ b! B: u* v* f! @
( |' U0 I4 X6 u8 ~6 s
编译下载,打开串口调试助手,并打开ST-Link的虚拟串口,并在发送窗口输入"test",并发送,运行效果如下:
# _% g9 M- w4 ]' o2 _: n( R. y3 J1 ~' Q6 N* b2 [7 ^3 b
2022-06-26_141759.png : ?. [5 a5 s; }

- O  N: }1 U0 W& f代码附件:
; v8 E. F7 ~/ s" g- k0 S+ s( S: l: g0 A+ a) P
USART3.rar (877.86 KB, 下载次数: 0)
1 收藏 评论0 发布时间:2022-6-26 17:39

举报

0个回答
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版