请选择 进入手机版 | 继续访问电脑版

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

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

[复制链接]
zhdjet 发布时间:2022-6-26 17:39
前面几篇把灯学习了一番,今天来学点其它的外设-USART串口;此篇应用板载的ST-LINK V3的MCO引脚提供给主控MCU的旁路时钟源及USART3来进行串口数据的收发学习;
9 B- ]* N7 k( W+ e) @- A% |
! }* G7 A3 p; @% E从原理图上可以看出USART3的RX和TX默认在引脚PD8/PD9上面;旁路时钟源为ST-Link的MCO提供的8M时钟源., q$ l3 V$ x2 J% _7 f  Q
* z0 _' E: v4 n9 k, ~5 V
2022-06-26_145604.png 7 S; w! a2 j4 K3 t% E4 m' {+ Z+ @7 M4 D
2022-06-26_145629.png + O; ^, W4 F: D4 k

5 h& k% @8 v! B1 |$ Q. B 2022-06-26_145835.png
0 r9 P1 L( e! x6 ?# t0 ~1 g+ ]
1 }- W) T) i' X' T; T打开cubeMX软件,进行时钟源和外设USART的设置,具体见下图:' B1 k6 W' P1 ?9 U8 N- ^
; G( c7 d/ H+ K- E8 Q
2022-06-26_145110.png   m. B' T, Q3 C5 g8 U% C7 d  g, S
; e' U: q$ I% T: w, B: h
1、先设置引脚PD9和PD8为USART3_RX和USART3_TX
% \8 [! d: P0 d5 c+ q7 C2、点击左侧的“System Core”,再点击左侧“RCC”' X& r, o+ m8 L
3、设置“High Speed Clock (HSE)”为“BYPASS Clock Source"& |) m/ p$ r! F! i' Z$ H

) |5 Q8 u& o9 f9 L" M7 t# j 2022-06-26_145247.png - A7 k; R2 h) v* y2 K5 W( r7 L

2 ?" @! V2 B( d9 b; b' @点击”Clock Configuration“,照上图设置时钟源;* k6 f/ X# p- N3 ^2 g

- O: _# x. |! M5 e0 a3 u接下来设置USART3,激活PD8\PD9的串口功能;
3 F% c' r. F4 Y& r
% j/ g7 z$ a7 _$ }. H3 \4 z
0 L: l$ j7 C8 N* a$ E) \* d* w 2022-06-26_145418.png
* d& v2 a' _/ `: K3 E6 `! D' x/ {' O8 Q5 F  Y! N& P
1、点击”Pinout & Configuration“,再点击”Connectivity“; T& j1 x& o. E, A8 _' A8 i0 P
2、再选中“USART3"2 }1 |/ D; g: l3 z% f: K, r
3、设置”Mode“为”Asynchronous“使能USART3为异步通信, k1 E6 j) Z; m$ k/ A
4、串口的收发波特率之类的参数保持默认即可
$ v, S: o# E: \; {) E# T# m3 t& u# z* s( L( i" S# R
以上设置完成后,点击”Project Manager“设置工程代码生成的相关参数并保存工程为”USRAT3":
% B& d0 `0 b  Z- F' @
8 E( o% {6 E' G% q4 @ 2022-06-26_145505.png
) \6 ^# I# e4 h  A  r. X. ~ 2022-06-26_115151.png , x( q4 y5 ^  I, `/ m
2022-06-26_145519.png
" R: @5 l: q; ~" y
  L$ Z$ I- A% \. e( g: n上面的保作完成后,即可点击“GENERATE CODE"生成工程代码,并选择打开工程;
, `6 X; l% l- K1 C1 c  g% _5 P. O
+ e& [" |7 _& d; R' t* e0 d, ` 2022-06-26_131106.png : P. h" R0 B9 i7 z" A- ?

: u- S8 ^3 K, [5 H9 M+ h, ^在MDK中打开工程后,双击打开”main.c"文件,添加自动发送16进制数据的代码;& [$ b0 E  O7 L

3 v; q% J( {" u+ m6 A再设置板载ST-Link的下载参数如下:
$ m* G5 e! j- h  _* h  _& ~" R; W* p- ]3 j2 J, \- U
2022-06-26_115244.png $ ~" e" S0 k! X+ W) n8 m! p% I: a

# f4 V$ ?3 L/ X. i5 p; n( c4 \ 2022-06-26_115327.png , ]( x$ \* z7 |( z; b) e& {
: g9 Y" }+ k6 d$ W
编译成功并下载到板卡,打开串口调试助手,选择COM串口为ST-LINK的虚拟串口号,并打开串口,即可看到运行的效果:
; S4 S; D& V( L/ g7 D5 t" w: P) U* |
( F. M2 E. b* Q# t" x 2022-06-26_142408.png * [  K  J# F% E* [1 k. d4 `
% y: P. H8 l0 l. }. H4 F  A
串口自动发送从00-2E的16进制数据并循环,说明USART3设置成功;: o$ `- @: ]3 o8 A: G' w8 y

3 M! A" I4 {: g/ P+ X接下来在上面的基础上修改代码为手工发送字符的代码并运行;
& f8 ~3 }5 a- b% S/ F/ T; }+ G8 d" T; k# B) I5 P2 W) C$ W
2022-06-26_140152.png ( P9 |/ D* ]9 i9 \/ ?1 R

+ c: [% v/ Q4 t: J1 v编译下载,打开串口调试助手,并打开ST-Link的虚拟串口,并在发送窗口输入"test",并发送,运行效果如下:
0 q- n: T4 m  V6 ?! k0 Q. e+ K/ @
: l' p0 x* X3 F* z3 t% o 2022-06-26_141759.png 2 G' I) h  p$ e/ O1 T# i
  v4 ], `' O/ L9 k* Q7 P
代码附件:
% ]1 Q% S7 \. f3 C, ~  q. D& F: H$ S  `# j4 K2 u7 b7 ]- j1 W
USART3.rar (877.86 KB, 下载次数: 0)
1 收藏 评论0 发布时间:2022-6-26 17:39

举报

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