STM32笔记15--串口通信基本原理

15.1、串行通信接口背景知识

15.2、STM32F1串口框图讲解

参考资料:《STM32开发指南--库函数》5.3,usart串口文件夹/第九章,串口实验

1、串行通信接口背景知识

首先,处理器与外部通信有两种常见方式:并行通信和串行通信:

(1)并行通信:原理是数据各个位同时传输,优点是传输速度快,缺点是占用引脚资源多。

(2)串行通信:原理是数据各个位按顺序传输,优点是占用引脚资源少,缺点是速度慢。

其次,在串行通信的基础上,传输又分为:单工,半双工和全双工:
(1)单工:只支持数据在一个方向上的传输;

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

(3)全双工:允许数据同时在两个方向上传输,因此,全双工通信要求通信两端都有接收和发送数据的能力;

再次,串行通信还可以分为同步通信和异步通信,

(1)同步通信指的是,带同步时钟信号的通信方式,数据的传输以时钟上升沿或者下降沿来触发的。例如SPI通信、IIC通信等

(2)异步通信指的是,不带有时钟信号的通信方式,在异步通信中要求通信双方事先约定好波特率,也就是通信的速度,例如UART(通用异步收发器)、单总线等

 2、STM32F1串口通信框图讲解

2.1、STM32的串口通信接口

UART:通用异步收发器

USART:通用同步异步收发器

以STM32F103ZET6为例,共有3个USART和2个UART

2.2、UART异步通信方式引脚连接示意图

 上图中,RxD:数据输入引脚,用于接收数据;TxD:数据输出引脚,用于发送数据。

下图为STM32F1系列五个串口对应的输入,输出引脚:

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

PS:奇偶校验位:所谓奇偶校验位,分别是奇校验和偶校验,如果是奇校验,就是在传输的数据最后一位补1或0,使得传输的数据共有奇数个1,偶校验的思想同理可得。

2.4、对USART框图的讲解

CPU接收数据时的路径:

 CPU发送数据时的路径:

需要注意的是,如果是异步通信方式,那么无论是发送还是接收数据,都需要约定好波特率,那么波特率是怎么产生的呢,波特率的产生如下图:

 发送器时钟和接收器时钟产生了发送端和接收端的波特率,这两个时钟都来源于最下方的波特率发生器。

 

版权声明:本文为CSDN博主「小石头石头小小」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45271734/article/details/122665297

生成海报
点赞 0

小石头石头小小

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

HC-05主从模式自动连接配置

HC-05蓝牙模块主要用于短距离的数据无线传输领域。可以方便的和 PC蓝牙设备相连,也可以两个模块之间的数据互通。避免繁琐的线缆连接,能直接替代串口线。采用英国CSR公司BlueCore4-Ext 芯片&#xff0c

基于stm32的自平衡小车

引言 1、系统概述 1.1、设计任务 利用stm32做一辆自平衡小车 1.2、设计要求 利用IIC和MPU6050、OLED12864进行通信,使用pid算法到自平衡,熟练掌握PID算法 2、方案设计与论

蓝牙模块 HC-06

HC-06蓝牙模块视图 使用TCL转串口使蓝牙模块进入AT指令模式 使用STM32cubemx配置串口模块,一般HC-06默认115200波特率来进行串口传输。并且要开启串口中断,目的是用来处理手机发送到蓝牙模块的