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

【经验分享】STM32G071串口编程

[复制链接]
STMCU小助手 发布时间:2021-11-10 18:02
STM32G071串口编程
% x* j) O1 U2 B# v* E: C1.基本概念
6 M. ^0 q3 L. }USART/ UART (同步/异步)收发器2 D$ @* v/ F1 k* _5 Z
收发两个设备间需要同步发送时钟,叫同步收发器。
; \* {+ T5 e0 Q6 m接收设备的频率能自动匹配发送设备的频率,叫异步收发器。3 z6 }6 G0 S. Z& X# q
一般都用异步收发器+ f+ o+ V6 E/ X1 j( P" ~' G' S
1.串口配置' f1 S# |2 F# s9 A9 G) m8 R
   
  1. 串口配置使用STM32CubeIDE工具进行自动配置。配置的内容包括基本配置和高级配置
复制代码
基本配置:; p0 {7 q# R3 X2 N
1.波特率 Baud Rate. C5 x4 a6 f. t" Q& v
2.字节长度 Word Length
4 ?1 X! p6 t9 u: o) L* {3.极性 Parity/ M6 i" X5 w" Z; i! H
4.停止位 Stop Bits( Y! D% S5 Z0 v( i+ Z. h$ c
使用默认参数即可,也可以更改成你需要的参数。8 ~, q; R/ f) X2 L/ R
需要注意两个串口之间通讯,这些基本配置必须一致,才能正常通讯。0 V2 X5 ?' J( J% H; F
异步串行数据的一般格式是:起始位+数据位+停止位,其中起始位1 位,数据位可以是5、6、7、8位,停止位可以是1、1.5、2位。2 m8 ~! r+ _7 R# K( O/ f% H2 U" v
20210405170242660.png

1 e( Q% Z8 i. Y' A$ p' Q8 w$ h! S
串口空闲时是高电平,开始位把电平拉低一个时钟。停止位是高电平。
8 S9 g5 E3 y: u# B  ]极性位是指校验位,是奇校验还是偶校验,默认情况是无校验。1 ]7 i! i. i2 Q+ {
/ l3 t% K/ n) ^1 @2 b* h2 H* N+ C4 @
高级配置8 @- A& D1 u2 ^
过采样 :采用16次过采样应该是能更好的防误判,抗干扰。! }5 {7 [  \7 d2 G# }' D/ [! [
, J5 R& d/ M" T* O! Y; P/ Z
2.串口编程6 @: ]3 V6 o1 K, L
结构体
' ^) a; r8 _$ S
  1.       串口的结构体是 **UART_HandleTypeDef**,在该机构体中,又包含
复制代码
- i' j9 {5 \, _( F0 {. z% ]0 E
Instance : 存放串口寄存器的数值。) p+ `& G5 @6 P/ C1 _, }

( t/ ^' @. v/ D串口发送
; F, Y- l1 {& V$ Z8 V' DHAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);8 d$ R/ @5 w2 o* \7 N9 r! d
函数参数中要指名是哪个串口,发送的字符串指针和发送的长度。
: S9 ]8 _5 I" z- h5 P! q' m8 R! ^: @串口中断发送的函数。发送完成后,会发送串口中断,直接进入回调函数TxCpltCallback()。
; E9 L* O+ ^7 q. S( j+ }, X/ j串口发送时要注意两次发送不能离得太近,否则函数会自动退出,返回“HAL_BUSY”,如果是这样,记得下次轮回的时候再发送一遍。0 |% `$ M5 ]) z* F0 j, x8 R
串口发送还要注意串口没有发送完毕之前,不要使用串口发送的字符串数组,否则会莫名的改变发送的内容。
: z: y0 F/ y  y6 q+ L) [; b- u; q
3. STM32特殊功能' b; S2 ]& r- f0 M1 L0 Y
1.串口FIFO
" B3 _! V9 O" J+ h/ |/ j6 @( o& ^; n/ G$ S0 W$ v- M
* [& P7 D1 S3 e8 \

; G# X/ N1 e# q( s2 i4 k
收藏 评论0 发布时间:2021-11-10 18:02

举报

0个回答

所属标签

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