一文读懂通信串口(物理接口)2

电子说

1.3w人已加入

描述

六、UART

1) 异步通信UART引脚连接方法:

UART是 异步全双工串口总线。它比同步串口复杂很多。有两根线,一根TXD用于发送,一根RXD用于接收。UART的串行数据传输不需要使用时钟信号来同步传输,而是依赖于发送设备和接收设备之间预定义的配置。对于发送设备和接收设备来说,两者的串行通信配置应该设置为完全相同。

IIC

对于两个芯片之间的连接,两个芯片GND共地,同时TXD和RXD交叉连接。这里的交叉连接的意思就是,芯片1的RxD连接芯片2的TXD,芯片2的RXD连接芯片1的TXD。这样,两个芯片之间就可以进行TTL电平通信了。

IIC

若是芯片与PC机(或上位机)相连,除了共地之外,就不能这样直接交叉连接了。尽管PC机和芯片都有TXD和RXD引脚,但是通常PC机(或上位机)通常使用的都是RS232接口(通常为DB9封装),因此不能直接交叉连接。RS232接口是9针(或引脚),通常是TxD和RxD经过电平转换得到的。故,要想使得芯片与PC机的RS232接口直接通信,需要也将芯片的输入输出端口也电平转换成RS232类型,再交叉连接。

经过电平转换后,芯片串口和RS232的电平标准是不一样的:

单片机是TTL电平:+5V表示1,0V表示0

RS232是负逻辑电平,-3 to -15V为1,3 to 15V为0

RS-232通讯协议标准串口的设备间通讯结构图如下:

IIC

所以单片机串口与PC串口通信就应该遵循下面的连接方式:在单片机串口与上位机给出的RS232口之间,通过电平转换电路(如下面图中的Max232芯片) 实现TTL电平与RS232电平之间的转换。下图中的P10,也就是上文中提到的DB9。

IIC

STM32的UART特点

全双工异步通信;

n 分数波特率发生器系统,提供精确的波特率。发送和接受共用的可编程波特率,最高可达4.5Mbits/s;

n 可编程的数据字长度(8位或者9位);

n 可配置的停止位(支持1或者2位停止位);

n 可配置的使用DMA多缓冲器通信;

n 单独的发送器和接收器使能位;

n 检测标志:① 接受缓冲器 ②发送缓冲器空 ③传输结束标志;

n 多个带标志的中断源,触发中断;

n 其他:校验控制,四个错误检测标志。

串口通信过程

IIC

STM32中UART参数

IIC

起始位:表示数据传输的开始,电平逻辑为“0” 。数据位:可能值有5、6、7、8、9,表示传输这几个bit 位数据。一般取值为8,因为一个ASCII 字符值为8 位。奇偶校验位:用于接收方对接收到的数据进行校验,校验“1” 的位数为偶数(偶校验) 或奇数(奇校验),以此来校验数据传送的正确性,使用时不需要此位也可以。停止位:表示一帧数据的结束。电平逻辑为“1”。如果用通用IO口模拟UART总线,则需一个输入口,一个输出口。

UART串口通信的数据包以帧为单位,常用的帧结构为:1位起始位+8位数据位+1位奇偶校验位(可选)+1位停止位。如下图所示:

IIC

奇偶校验位分为奇校验和偶校验两种,是一种简单的数据误码校验方法。奇校验是指每帧数据中,包括数据位和奇偶校验位的全部9个位中1的个数必须为奇数;偶校验是指每帧数据中,包括数据位和奇偶校验位的全部9个位中1的个数必须为偶数。

校验方法除了奇校验(odd)、偶校验(even)之外,还可以有:0 校验(space)、1 校验(mark)以及无校验(noparity)。0/1校验:不管有效数据中的内容是什么,校验位总为0或者1。

UART框图

IIC

这个框图分成上、中、下三个部分,具体的可以看《STM32中文参考手册》中的描述。

框图的上部分,数据从RX进入到接收移位寄存器,后进入到接收数据寄存器,最终供CPU或者DMA来进行读取;数据从CPU或者DMA传递过来,进入发送数据寄存器,后进入发送移位寄存器,最终通过TX发送出去。

然而,UART的发送和接收都需要波特率来进行控制的,波特率是怎样控制的呢?

这就到了框图的下部分,在接收移位寄存器、发送移位寄存器都还有一个进入的箭头,分别连接到接收器控制、发送器控制。而这两者连接的又是接收器时钟、发送器时钟。也就是说,异步通信尽管没有时钟同步信号,但是在串口内部,是提供了时钟信号来进行控制的。而接收器时钟和发送器时钟又是由什么控制的呢?

可以看到,接收器时钟和发送器时钟又被连接到同一个控制单元,也就是说它们共用一个波特率发生器。同时也可以看到接收器时钟(发生器时钟)的计算方法、USRRTDIV的计算方法。

七、物理接口

串行端口称为串口,也称为串行通信接口,即COM端口。

UART口(嵌入式里面说的串口,一般是指UART口。4个pin(Vcc,GND,RX,TX),用TTL电平)、COM口、USB口、RJ45以太网口是指的物理接口形式(硬件)。

TTL、RS-232(全双工)、RS-485(半双工) RS-422(全双工)是指的电平标准(电信号)。

使用国际连接器标准定义的8个位置(8针)。修改后的插孔或插头

单片机与PC通讯示意图如下

IIC

UART接口 :通用异步收发器(Universal Asynchronous Receiver/Transmitter),UART是串口收发的逻辑电路,这部分可以独立成芯片,也可以作为模块嵌入到其他芯片里,单片机、SOC、PC里都会有UART模块,UART有4个pin(VCC, GND, RX, TX), 用的TTL电平, 低电平为0(0V),高电平为1(3.3V或以上)。

COM 即串行通讯端口,简称串口。这里区别于USB的“通用串行总线”和硬盘的“SATA”。一般我们见到的是两种物理标准。D型9针插头,和 4针杜邦头两种。这是常见的4针串口,在电路板上常见,经常上边还带有杜邦插针。还有时候有第五根针,3.3V电源端。由于是预留在电路板上的,协议可以有很多种,要看具体设备,应用了串口通信时序和RS232的逻辑电平。

IIC

1)USB通用串行总线(Universal Serial Bus)缩写为USB,(物理接口)

是一个外部总线标准,用于规范电脑与外部设备的连接和通讯,是应用在PC领域的接口技术,特点是传输速度快,支持热插拔,可连接多个设备。

  我们在很多地方可以看到USB的身影,鼠标,键盘,手机充电器,现在几乎所有的电子充电设备都是USB接口,如下是各个USB的物理接口。

IIC

USB接口是计算机主板上的四针接口。2根信号线(D+、D-)和2根电源线(+、-)

最常见的的Type-A型USB接口定义如下。

Pin# Name 颜色
1 VBUS/+5V 红色
2 D-/Data-/DM 白色
3 D+/Data+/DP 绿色
4 GND 黑色

USB电缆分为屏蔽型和非屏蔽型。屏蔽电缆的传输速度可以达到12Mbps,价格更高。

非屏蔽电缆的速度为1.5Mbps,但价格便宜。

2、USB速率

1MB/s=8Mbps(1个Byte等于8bit)

USB1.0 低速(Low Speed) 传输速率为 1.5Mbps;

USB1.1 全速(Full Speed) 传输速率为 12Mbps;

USB2.0 高速(High Speed) 传输速率为 480Mbps;

USB3.0 超速(SuperSpeed) 传输速率为 5Gbps;

USB3.1 Gen2 超高速(SuperSpeed+) 传输速率为 10Gbps;

●USB Type-C

又称USB-C,是一种通用串行总线(USB)的硬件接口形式,外观上最大特点在于其上下端完全一致,与Micro-USB相比用户不必再区分USB正反面。

但USB-C只是一个接口,不一定支持USB 3.1或Power Delivery。

自从2014年USB-C规范发布后,许多新款的Android移动设备、笔记本电脑、台式机甚至是游戏机等3C设备开始使用这种连接端口。Windows 10原生支持Type-C。

IIC

IIC

4、USB转RS-232

USB转232,可以先将USB转换为TTL,再将TTL转换为RS232,当然市面上也有很多USB直接转RS232的线材,线材内部集成转换电路,淘宝上某USB转RS232用的两个芯片是FT232和SP213。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分