寒假实训笔记day04——串口(UART)

1.UART

UART——串口;作用:单片机与器件、设备之间进行通信

wifi与单片机进行通信;PC与单片机进行通信;传感器与单片机进行通信

通信是产品基础,也是产品核心

UART是一种通信协议,固定的一种通信协议,遵循这个通信协议才能正常地通信

串口:异步全双工串行通信

2.常用通信协议分类及其特征介绍

  • 异步:在两个器件、设备之间,通讯速度不同步,且时钟线连接,设置一个波特率去控制通信速度(PC机提供的标准通信接口都是异步的)

举例: 器件A:1s发送1bit数据;器件B:500ms接收1bit数据
在这里插入图片描述

  • 同步:在两个器件、设备之间,有一根时钟线连接,通讯速度相同

  • 全双工:在两个器件、设备之间,且环境相同的情况下,器件A与器件B在这一个通信过程,器件A发送数据到器件B,而器件B也能发送数据到器件A,通信方向为双向,两根数据线进行信息传输
    在这里插入图片描述

  • 半双工:在两个器件、设备之间,且环境相同的情况下,器件A与器件B,在这一时刻器件A发送数据到器件B,下一时刻器件B也能发送数据到器件A,但同一时刻只能单向通信
    在这里插入图片描述

  • 单工:在两个器件、设备之间,且环境相同的情况下,器件A与器件B在整一个过程中,器件A只能发送数据到器件B,传输方向单一

  • 半双工和单工:只有一根数据线相连

  • 串行:比作独木桥,一次只能通过一个人;一次只能传输1bit数据

  • 并行:比作高速公路,车道多,则通过的车也多;数据一次可以传输很多bit

3.UART通信原理

在这里插入图片描述
标准的UART数据帧格式
在这里插入图片描述
起始位:代表一帧数据的起始,占一帧数据的1bit
数据位:5~8bit,用户自己设置数据长度
校验位:验证数据稳定性,奇偶校验
停止位:代表驿站数据结束,0.5-2bit

奇偶校验:用来校验数据位上“1”的个数

举例
0101 1101——“1”个数:5个
采用奇校验:校验位为0
0111 1101——“1”个数:6个
采用奇校验:校验位为1

不采用奇偶校验的原因:知道这个数据是错的,但是无法知道错在哪里

4.UART四要素

XCOM:是一款串口调试软件,用户可以在软件输入调试的信息,可以设置发送的内容,可以编辑发送的进制数据,可以设置通信的协议,可以调整发送的详细方案,内置多种配置方式,用户只需要按照软件的提示就可以编辑调试串口的命令;XCOM使用非常简单,内置官方提供的帮助,用户可以查看详细的功能描述,可以查看详细的串口连接和调试说明,当你配置参数完毕就可以启动协议传输,适合需要调试串口通讯的朋友使用!
在这里插入图片描述
波特率:控制串口的通信速度——比如:1s可以处理115200个数据(常用:115200、9600)
停止位:0.5-2bit——默认设置为1bit
数据位:5~8bit——默认设置为8bit
奇偶校验:无奇偶校验

补充:STM32F405RGT6的UART

  • 串口数量:3个
    在这里插入图片描述
  • 命名:USART1、USART2、USART6
    在这里插入图片描述
    在这里插入图片描述
  • 时钟:USART1、USART6 --------》 APB2 84Mhz; USART2---------》 APB1 42Mhz

5.补充

STM32的UART介绍(参考手册)
在这里插入图片描述
STM32的UART特征(参考手册)
在这里插入图片描述

版权声明:本文为CSDN博主「不想当大神的小白不是好菜鸟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_47200070/article/details/122776582

生成海报
点赞 0

不想当大神的小白不是好菜鸟

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

暂无评论

发表评论

相关推荐

串口不定长接收

一、保留接收区和开启接收的语句    uint8_t buffer[5];HAL_UART_Transmit_IT(&huart1,buffer,3); 二、写入开启空闲中断的语句    __HAL_UART_ENABLE_IT(&huart

基于STM32单片机的电子密码锁设计

一.硬件方案 本设计采用STM32F103C8T6单片机作为主控芯片,结合外围的矩阵按键输入、LCD1602液晶显示、报警、开锁等电路模块实现开锁、上锁、报警、密码更改等功能,设计了一款可以多次修改密码并且具有报警