串口通信理解

目录

1. 串口

2.串口通信模型

3. 数据传输

4.电平标准

TTL信号

RS232

RS485


1. 串口


串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。
串口可以将接收来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。

2.串口通信模型

  • TX(Transmit Exchange)数据发送脚
  • RX(Receive Exchange)数据接收脚
  • GND(Ground)地线

串口通信(Serial Communications)是串口按位(bit)发送和接收字节的通信方式,它是嵌入式物联网领域中常用的通讯方式。

MCU常用到的串口通信模块主要有两种:UART和USART。

UART:全称是Universal Asynchronous Receiver/Transmitte,即通用异步收发器。
USART:全称是Universal Synchronous/Asynchronous Receiver/Transmitter,即通用同步/异步收发器。

区别:
UART只支持异步收发,USART支持同步和异步收发。

异步通信和同步通信都要进行发送方和接收方的“同步”。其中异步通信按字符进行传输,利用每一帧的起始位和停止位实现同步;而同步通信采用共同外部时钟来进行同步。

3. 数据传输

数据都是通过bit位来传输的,高电平为1,低电平为0。而高低电平怎么来定义呢?这就引出了串口通信的电平标准,TTL,RS232,RS485等,这些标准等会说,先看一下数据帧格式。

数据帧从左往右总是以地电平开始,高电平结束,在高低电平之间的为n个二进制数据。其中n代表二进制的数量,数量不同所表示的帧格式也不同,常见的有8位二进制,7位二进制,5位二进制的数据位。在上图中的就是8位二进制的数据位。
二进制数据位,高电平表示1,低电平表示0,如上图表示:01000001,转换为十进制为1+64=65,对应ASCII表中的字母A。

4.电平标准

单工:只允许单向通信
半双工:同一时刻只允许单向通信,也就是在发送时无法接收数据
全双工:同一时刻允许双向通信,也就是在发送时也可以接收数据

TTL信号

TTL指双极型三极管逻辑电路,市面上很多“USB转TTL”模块,实际上是“USB转TTL电平的串口”模块。这种信号0对应0V,1对应3.3V或者5V。与单片机、SOC的IO电平兼容。不过实际也不一定是TTL电平,因为现在大部分数字逻辑都是CMOS工艺做的,只是沿用了TTL的说法。我们进行串口通信的时候 从单片机直接出来的基本是都 是 TTL 电平。

TTL电平:全双工(逻辑1: 2.4V--5V 逻辑0: 0V--0.5V)

RS232

是电子工业协会(Electronic Industries Association,EIA) 制定的异步传输标准接口,同时对应着电平标准和通信协议(时序),其电平标准:+3V~+15V对应0,-3V~-15V对应1。rs232 的逻辑电平和TTL 不一样但是协议一样。

与TTL通行时需要电平装换器转换

RS-232电平:全双工(逻辑1:-15V--3V 逻辑0:+3V--+15V)

RS485

RS485:RS485是一种串口接口标准,为了长距离传输采用差分方式传输,传输的是差分信号,抗干扰能力比RS232强很多。两线压差为-(2~6)V表示0,两线压差为+(2~6)V表示1。

RS-485:半双工、(逻辑1:+2V--+6V 逻辑0: -6V---2V)这里的电平指AB 两线间的电压差。

电脑和单片机使用串口传输数据需要通过电平转换线连接,根据使用的电平标准来选择传输线,USB转TTL,USB转RS232,USB转485。

  • 16
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值