stm32学习日记--USART

前言

之前一直用hal库直接用的串口通信,所以以前也是学过的,但是当时才大一,看了原理也没有太理解,只是会用了,最近又重新复习了一遍,搞清楚原理,学习后,对学到的东西的一些总结。

USART介绍

通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。 USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。使用多缓冲器配置的DMA方式,可以实现高速数据通信。

主要特性

在这里插入图片描述

通信模式

任何USART通信,需要用到2个对外连接引脚,RxD(输入引脚,用于串行数据接收)、TxD(输出引脚,用于串行数据发送)
SCLK:发送器时钟输出(同步时才用到)
GND:共地

通信过程

在这里插入图片描述

通信协议

在这里插入图片描述

理解USART框图

框图是在参考手册里面的,需要的同学可以去看一下。

输入模式

在这里插入图片描述
输入模式的路线如上图所示
1:Rx接收到数据先进入码解码模块,
2:然后沿着线1,进入移位寄存器中,然后再发给接收数据寄存器(RDR),读操作就可以读RDR的值了,
3:目光回到接收移位寄存器,还有一条线连过去,就是4这条线,这条线连着 接收器控制 这个模块,这个模块就是控制这个接收移位寄存器的
4:再看5这条线,是接收器的时钟,连着时钟的发生器,我们要改变时钟的话,就是要改变这里
5:看回 接收器控制 模块,还有很多个寄存器箭头指向它,其实表示这些寄存器控制它,而我们到时要操作的也是这些寄存器,比如CR1 那些。
接收端就是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值