USART串口通讯

简介: USART串口通讯

1. UART总线与USART接口

☞UART

UART: 通用异步通信收发器/SCI串行通讯接口。用于异步通信,可以实现全双工收发,即通信双方同时收发;两个器件无需共享同一个时钟信号就能进行通讯,即异步通讯。数据收发单位是数据帧,工作模式为中断方式,DMA工作方式。

  • UART通讯双方需要设定相同的数据格式,收的格式和发的格式完全一样,一般数据帧的格式为

  • UART通讯双方要设定相同的数据速率,这也是异步通讯都需要设置的,接收方与发送方必须要设置一致的波特率。
  • UART规范主要定义了TTL电平的可配置通信数据格式,通信速率,异步采样机制。

☞差分传输

差分传输是一种信号传输技术,在两根线上都传输同一信号,这两个信号的振幅相同,相位相反,也叫做平衡传输方式,在这两根线上传输的信号就是差分信号,信号的接收端比较这两个电压的差值来判断发送端发送的是逻辑0还是逻辑1,设计电路时,差分走线必须是等长,等宽,紧密靠近且在同一层面的两根线。

☞USART与UART的区别

USART

通用同步异步收发器,USART在UART的基础上增加了同步机制,一种可被设置为同步、异步通信模式的全双工串行通讯接口。在同步模式下,发送器时钟引脚SCLK输出与SPI主模式相似的数据传输时钟,相位和极性可以通过寄存器来设置。

USART和UART的区别

  • 位流同步机制不同,同步与异步;
  • 可支持的协议数量不同,USART更为复杂,不但兼容UART,还可以传输多种不同协议的数据,比如LAN总线、Modbus、智能卡等等;
  • 支持的外设能力有所不同,USART常用于系统正常运行,高功耗时的串行数据通信,当系统进入休眠等低功耗模式的时候,采用UART低速通信接口。

2. 串口通讯

串口通讯: Serial Communication,一种串行通讯方式。

  • 物理层:通讯中,具有机械、电子功能部分的特性,确保原始数据在物理媒体上的传输;
  • 协议层:协议层规定了通讯的逻辑,统一了收发双方数据打包和解包的标准;

☞物理层

RS232标准:规定了信号用途、通讯接口及信号电平标准。

通过串口线链接两个设备的DB9接口,串口信号线使用RS-232标准传输数据信号。

电平标准

通讯标准 电平标准
5V TTL 逻辑1:2.4V ~ 5V, 逻辑0:0V ~ 0.5V
RS-232 逻辑1:-15V ~ -3V, 逻辑0:+3V ~ +15V

RS-232增加了串口通讯的远距离传输及抗干扰能力。

RS-232信号线

RS-232串口标准常用于计算机、路由与调制解调器之间的通讯,在这种通讯系统中,设备分为数据终端设备DTE(比如计算机和路由)和数据通讯设备DCE(比如调制解调器)。

RS-232标准使用COM口,也就是DB9接口,使用串口线连接(公头+母头)。

  • RXD:接收数据,DCE → DTE,输入,TXDa连接RXDb;
  • TXD:发送数据,DTE → DCE,输出,TXDb连接RXDa;
  • GND:信号地,地线,两个通讯设备之间地电位可能不一样,这样会影响收发双方的电平信号,所以两个串口设备之间必须使用地线连接,也就是所谓的共地。

☞协议层

串口通讯的数据包由发送设备通过自己的TXD接口传输到接收设备的RXD接口,协议层规定了数据包的内容,包括起始位、数据位、校验位、停止位,通讯双方的数据包格式必须约定一致才能正常收发数据。

波特率

异步通讯中没有时钟信号,在上面的DB9接口中就没有时钟线,所以两个设备之间要约定好波特率,即每个码元的长度,以便于对信号解码,常见的波特率有4800、9600、115200等。

波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示,单位为波特。比特率指单位时间内传输的比特数,单位是bit/s也可以写作bps。波特率越大,传输速率越快。

相关文章
|
6月前
|
存储 缓存 芯片
STM32--USART串口
STM32--USART串口
107 0
|
6月前
|
存储 芯片
STM32 cubemx配置USART DMA传输
STM32 cubemx配置USART DMA传输
152 0
|
芯片
STM32F103C8 EXTI外部中断
STM32F103C8 EXTI外部中断
105 0
|
缓存 数据格式
STM32串口通信配置(USART1+USART2+USART3+UART4)
STM32串口通信配置(USART1+USART2+USART3+UART4)
281 0
|
Linux 定位技术 芯片
STM32 EXTI外部中断
外部中断 是单片机实时地处理外部事件的一种内部机制。当某种外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断事件的处理;中断处理完毕后.又返回被中断的程序处,继续执行下去. 外部中断 是指由 外部设备 发出的 中断请求 ,如键盘、鼠标、计时器、网络数据等。外部中断可以提高系统的效率,使系统能够有效地处理外部设备发出的中断请求,从而改善系统的性能。
149 0
STM32 EXTI外部中断
|
移动开发
STM32F1案例 串口USART使用
STM32F1案例 串口USART使用
195 0
野火F1开发板STM32-USART使用
野火F1开发板STM32-USART使用
129 0
|
存储 芯片 异构计算