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

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

[复制链接]
zhdjet 发布时间:2022-6-26 17:39
前面几篇把灯学习了一番,今天来学点其它的外设-USART串口;此篇应用板载的ST-LINK V3的MCO引脚提供给主控MCU的旁路时钟源及USART3来进行串口数据的收发学习;+ D: ^  D& Q4 U7 [0 I, O
& z+ _8 y8 j4 k, ^
从原理图上可以看出USART3的RX和TX默认在引脚PD8/PD9上面;旁路时钟源为ST-Link的MCO提供的8M时钟源.0 Q9 a8 a4 W  w
7 S6 E. z# l  u; |. M
2022-06-26_145604.png ; N  e& n) Q1 |
2022-06-26_145629.png " M: r6 ~" w5 }0 ]; @
1 G, l- x7 b' V% ?3 m5 f
2022-06-26_145835.png . [+ F/ E3 T& V9 q  E
! |9 H* O6 f( R7 m
打开cubeMX软件,进行时钟源和外设USART的设置,具体见下图:
9 Q  |" v8 u, `7 u  {
6 g" G; Y# @, b; p1 z; ~( ` 2022-06-26_145110.png
+ B1 e$ o, z, s1 S# [5 d+ c2 \# a4 y2 ?" N5 J6 t7 j7 Y
1、先设置引脚PD9和PD8为USART3_RX和USART3_TX/ b( G, z/ ]/ A1 h" e
2、点击左侧的“System Core”,再点击左侧“RCC”
- W- U" Q* U0 K# T* Y3、设置“High Speed Clock (HSE)”为“BYPASS Clock Source"; A) k6 t# ~$ c% r* d" r
4 s5 h* ]" |6 m- [
2022-06-26_145247.png 2 H' P. S& q9 n. a0 R% b# |

, e9 }9 u0 b& O3 J( _点击”Clock Configuration“,照上图设置时钟源;# o; d! Y6 g- {2 y, Y" d
5 R3 \" e7 i% G2 i; l0 E# a
接下来设置USART3,激活PD8\PD9的串口功能;( x9 S5 S9 ?0 l) B7 l5 d' V4 F# Q. c
5 b7 n$ [/ e4 C( u
7 f3 n1 R9 n% w) @3 }+ {
2022-06-26_145418.png & o5 c- f/ f7 \2 t$ X

$ n4 W) F# c5 ~. B: L1、点击”Pinout & Configuration“,再点击”Connectivity“* X& u6 O  a+ w7 G
2、再选中“USART3"
$ r7 `& y0 W% `1 p! H: ]; o6 x3、设置”Mode“为”Asynchronous“使能USART3为异步通信0 J+ |1 H% ]# S: e. u
4、串口的收发波特率之类的参数保持默认即可& W) M5 x8 u3 f. g4 F& A
$ g1 S1 G) I6 z1 i9 K
以上设置完成后,点击”Project Manager“设置工程代码生成的相关参数并保存工程为”USRAT3":
- j' M3 K5 h( U2 e
- u; _( d5 m0 p# U 2022-06-26_145505.png + T% y/ Y: V" B) ~1 K" _
2022-06-26_115151.png
: r' j) s) F6 R# N) `1 ] 2022-06-26_145519.png
, d: b4 ?! n+ J2 E% R
! D7 L' X( Y6 m6 g$ H% Z- T上面的保作完成后,即可点击“GENERATE CODE"生成工程代码,并选择打开工程;  T- P" U, ]' c  [5 c" q
9 }2 p6 |0 }0 Z' m( j/ @
2022-06-26_131106.png
# x. W- e! O. f' u& G9 G4 L/ g& W5 o1 o) G* C
在MDK中打开工程后,双击打开”main.c"文件,添加自动发送16进制数据的代码;
5 p' ?0 W8 X- z2 m% Y
+ F7 @4 ^# u4 P4 D  f再设置板载ST-Link的下载参数如下:4 d: t+ k/ g6 t7 \& j+ u
  w5 h- ]( X/ g& j" j+ p3 p
2022-06-26_115244.png ; x1 r  U4 a9 |, X! }/ Y: M5 e
7 ~0 K- a$ |# p
2022-06-26_115327.png # ]! D7 \) J- f( s4 ~/ J2 a3 e1 c
" a- |/ q" C$ e7 e9 h
编译成功并下载到板卡,打开串口调试助手,选择COM串口为ST-LINK的虚拟串口号,并打开串口,即可看到运行的效果:
6 a" T( E4 f/ D
, _# c6 ?1 J0 K5 m 2022-06-26_142408.png
3 B6 U$ U4 a, M8 a8 i
3 b! z* p, [5 w: O9 y. \3 y6 }串口自动发送从00-2E的16进制数据并循环,说明USART3设置成功;, a: x8 k; j/ g& B0 _7 W0 n3 P4 a
! m; N4 M! ]" {2 n
接下来在上面的基础上修改代码为手工发送字符的代码并运行;
" M/ j6 I# i9 i1 ~+ u% ?$ ~
. g! ~/ f8 \4 T' X! V5 n4 t: Z 2022-06-26_140152.png
9 l( I- U5 d& a3 W4 C9 o: }7 W# b# z+ A5 k
编译下载,打开串口调试助手,并打开ST-Link的虚拟串口,并在发送窗口输入"test",并发送,运行效果如下:
1 J3 B7 h1 a' B0 G# K$ @# Q  a
% @: q$ h: t- c( m+ q 2022-06-26_141759.png
6 G7 \* s; O) m0 ]+ ], {
% w% C/ ~* |6 v1 z+ Z8 P2 ?1 E, A代码附件:) g& V. w8 R: u  _* ]5 ^; ^3 m7 f

; b- f. V, p* L/ J; D  R 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 手机版