STM32中的串口通信的基础知识

目录

串口通信基本原理

并行通信与串行通信

串行通信中单工,半双工和全双工的区别

按通信方式不同又可分为异步通信和同步通信

常见的串行通信接口

STM32中的5个串口引脚

STM32中USART的通信过程

STM32串口异步通信需要定义的参数

奇偶矫正位

如果GPIO作为串口,如何配置输入输出模式?

异步串口通信框图讲解


串口通信基本原理

并行通信与串行通信

 

① 并行通信传送八路信号,一次并行传送传送完整的一个字节信息。串行通信在一个方向上只能传送一路信号,一次只能传送一个二进制位,传送一个字节信息时,只能一位一位地依次传送;

② 串行的传输速度慢,但是对线路的要求低一些。 并行的对线路的要求高,但是速度快;

③ 串行线路仅使用一对信号线,线路成本低并且抗干扰能力强,因此可以用在长距离通讯上;而并行线路使用多对信号线(还不包括额外的控制线路),线路成本高并且抗干扰能力差,因此对通讯距离有非常严格的限制。

串行通信中单工,半双工和全双工的区别

单工,半双工和全双工是通过传输方向不同而分的。具体说明如下:

单工

数据传输只支持数据在一个方向上传输

半双工

允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;

全双工

允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。

 

 

按通信方式不同又可分为异步通信和同步通信

通信方式

特点

同步通信

要求接收端时钟频率和发送端时钟频率一致,发送端根据有效的时钟脉冲发送连续的比特流(我们一般接触到的是上升触发,即只有上升沿脉冲可以触发收发端的动作);

异步通信

不要求接收端时钟和发送端时钟同步,发送端发送完一个字节后,可经过任意长的时间间隔再发送下一个字节,我们一般认为异步通信发送的信息以字节为单位。

 

 

常见的串行通信接口

注:

注:全双工由于可以同时进行双向通信,因此通信双方都有独立的接收和发送引脚;单工和半双工由于在任何时刻只有且仅有一种信息传输状态,因此通信双方的接收和发送引脚是结合在一起的,不相互独立。

STM32中的5个串口引脚

 

-RXD(R-Receiver)

数据输入引脚。数据接受;

-TXD(T-Transmitter)

数据发送引脚。数据发送。

其中包含3个USART通用异步/同步收发器(1,2,3),2个UART通用同步收发器(4,5)。

STM32中USART的通信过程

 

STM32串口异步通信需要定义的参数

 

奇偶矫正位

奇bai偶校验(Parity Check)是一种校验代码传输正确性du的方法。根据被传输的一组二进zhi制代码的数位中“1”的个dao数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这组代码中“1”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。

奇偶校验位有两种类型:偶校验位与奇校验位。如果一组给定数据位中 1 的个数是奇数,那么偶校验位就置为 1,从而使得总的 1 的个数是偶数。如果给定一组数据位中 1 的个数是偶数,那么奇校验位就置为 1,使得总的 1 的个数是奇数。

如果GPIO作为串口,如何配置输入输出模式?

 

参考“STM32中文参考手册->通用复用功能I/O->GPIO功能描述->外设的GPIO配置”。

异步串口通信框图讲解

 

对于进行数据的异步发送与异步接收的两个设备来说,最重要的是要有“同样的波特率”。在上述框图中,波特率产生到送入移位寄存器的方式如下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肥肥胖胖是太阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值