IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> STM32的串口协议 -> 正文阅读

[嵌入式]STM32的串口协议

一、串口协议

1.串口协议

串口通信指串口按位(bit)发送和接收字节。尽管比特字节(byte)的串行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。串口通信协议是指规定了数据包的内容,内容包含了起始位、主体数据、校验位及停止位,双方需要约定一致的数据包格式才能正常收发数据的有关规范。在串口通信中,常用的协议包括RS-232、RS-422和RS-485。

2.RS-232标准

(1)介绍

RS-232是美国电子工业联盟制定的串行数据通信接口标准,原始编号全称是EIA-RS-232(简称RS232),它被广泛用于DCE(Data Communication Equipment ) 和 DTE(Data Terminal Equipment) 之间的连接。DCE可以理解为数据通信端,比如modem设备;DTE可以理解为数据终端,比如电脑。最早的台式电脑都会保留9针的232接口,用于串口通信,目前基本被USB接口取代。现在RS232接口常用于仪器仪表设备,PLC以及嵌入式领域当作调试口来使用。

(2)电气特性

电平状态电压
0(space)+3~+15V
1(mark)-15~-3v V
非法状态-3~+3V

(3)最大通讯距离及速率

协议最初规定设备最大速率为20kbps,对于16550A UART最大速率为1.5Mbps。码元畸变小于4%的情况下,DTE 和 DCE 之间最大传输距离为 15m(50 英尺)。可见这个最大的距离是在码元畸变小于 4%的前提下给出的。为了保证码元畸变小于 4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于 2500pF。对于普通导线,其电容值约为 170pF/m,则允许距离 L=2500pF/(170pF/m)=15m。当速率下降时,传输距离会成倍增加,下表是Texas Instruments 在不同速率下对应的传输线缆长度:

速率(bps)最大线缆长度(m)
1920015.24
9600152.4
4800304.8
2400914.4

(4)设置

串行通信在软件设置里需要做多项设置,最常见的设置包括波特率(Baud Rate)、奇偶校验(Parity Check)和停止位(Stop Bit)。

波特率(Baud Rate):
是指从一设备发到另一设备的波特率,即每秒钟多少比特bits per second (bit/s)。典型的波特率是300, 1200, 2400, 9600, 19200, 115200 等bit/s。一般通信两端设备都要设为相同的波特率,但有些设备也可以设置为自动检测波特率。

奇偶校验(Parity Check):
是用来验证数据正确性的。奇偶校验一般不使用,如果使用,那么既可以做奇校验(Odd Parity)也可以做偶校验(Even Parity)。

停止位(Stop Bit):
是在每个字节数据传输之后发送的,它用来帮助接收信号方硬件重同步。

3.RS232电平与TTL电平的区别

(1)RS232电平

rs232是个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries AssociaTIon,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。RS232的电平标准为+12V为逻辑负,-12为逻辑正,TTL电平为5V为逻辑正,0为逻辑负

(2)TTL电平

TTL电平是TTL电路输出的电平,其中“TTL”是英文“Transistor-Transistor Logic”的缩写,中文翻译为“晶体管-晶体管逻辑”,因此TTL电路就是“晶体管-晶体管逻辑电路”。

TTL电平标准:
输出L:<0.8V; H:>2.4V。
输入L:<1.2V; H:>2.0V。
TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限就只有(0.8-0/2=0.4V,高电平的噪声容限为(5-2.4)/=1.3V。

(3)TTL与RS232的区别

在这里插入图片描述由上图可以看出RS232电平与TTL电平逻辑刚好相反。TTL1为高电平,0为低电平,RS232相反。

三种通信方式:
两设备通过232标准通讯
在这里插入图片描述控制器发出的是TTL电平,经过电平转换芯片转换成232电平. 其中DB9是一种通讯线如图。其中有用的是RXD,TXD。
在这里插入图片描述USB转串口与电脑进行通讯
在这里插入图片描述
电平转换芯片一般用CH340,同时电脑还需要安装CH340驱动
TTL电平之间的直接通讯
在这里插入图片描述

二、USB/TTL转232模块的工作原理

1.接口简介

(1)USB接口

在这里插入图片描述

通用串行总线(英语:Universal Serial Bus,缩写:USB)是一种串口总线标准,也是一种输入输出接口的技术规范,被广泛地应用于个人电脑和移动设备等信息通讯产品,并扩展至摄影器材、数字电视(机顶盒)、游戏机等其它相关领域。最新一代是USB4,传输速度为40Gbit/s,三段式电压5V/12V/20V,最大供电100W ,新型Type C接口允许正反盲插。

优点:
1.可以热插拔。就是用户在使用外接设备时,不需要关机再开机等动作,而是在电脑工作时,直接将USB插上使用。
2.携带方便。USB设备大多以“小、轻、薄”见长,对用户来说,随身携带大量数据时,很方便。当然USB硬盘是首要之选了。
3.标准统一。大家常见的是IDE接口的硬盘,串口的鼠标键盘,并口的打印机扫描仪,可是有了USB之后,这些应用外设统统可以用同样的标准与个人电脑连接,这时就有了USB硬盘、USB鼠标、USB打印机等等。
4.可以连接多个设备。USB在个人电脑上往往具有多个接口,可以同时连接几个设备,如果接上一个有四个端口的USB HUB时,就可以再连上;四个USB设备,以此类推,尽可以连下去,将你家的设备都同时连在一台个人电脑上而不会有任何问题(注:最高可连接至127个设备)。

(2)TTL串口

六合一usb转uart串口cp2102,ttl,485,232互转3.3v/5

单片机串口是TTL电平,所以叫TTL串口或UART 串口。

TTL电平:+5V等价于逻辑“1”,0V等价于逻辑“0”(采用二进制来表示数据时)。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。

(3)232串口

在这里插入图片描述232串口,通过232电平标准工作。

R232电平,负逻辑:
逻辑1(MARK)=-3V~-15V
逻辑0(SPACE)=+3~+15V

S232 接口一共有 9 个引脚,分别定义是:
1、载波检测 DCD;
2、接收数据 RXD;
3、发送数据 TXD;
4、数据终端准备好 DTR;
5、信号地线 SG;
6、数据准备好 DSR;
7、请求发送 RTS;
8、清除发送 CTS;
9、振铃提示 RI。我们要让这个串口和我们单片机进行通信,我们只需要关心其中的 2 脚 RXD、3 脚 TXD 和 5 脚 GND 即可,这三个引脚的名字和我们单片机上的串口名字一样,但是却不能直接和单片机对连通信。

2.转换方法

CH340等芯片是直接将USB信号转换为TTL电平或者TTL电平转换为USB信号。

MAX232等芯片是将TTL转换为RS232信号或者将RS232信号转换为TTL.

(1)USB转UART(TTL)原理
在这里插入图片描述用跳线帽把中间和下边的针短接在一起。右侧的 CH340T 这个电路很简单,把电源、晶振接好后,6 脚和 7 脚的 DP 和 DM 分别接 USB 口的 2 个数据引脚上去,3 脚和 4 脚通过跳线接到单片机的 TXD 和 RXD 上去。

(2)USB转232串口线原理
USB接口>>>CH340>>>MAX232>>>9针接口
信号分析:
电脑USB接口>>>电脑输出USB电平信号>>>CH340>>>TTL电平>>>MAX232芯片>>>电脑串口接口
在这里插入图片描述在这里插入图片描述其实 RS232 串口和 (TTL串口)UART 串口,它们的协议类型是一样的,只是电平标准不同而已,而 MAX232 这个芯片起到的就是中间人的作用,它把 UART 电平(TTL电平)转换成 RS232 电平,也把 RS232 电平转换成 UART 电平,从而实现标准 RS232接口和单片机 UART 之间的通信连接。

“USB/TTL转232”模块工作原理:
USB转串口模块可以使用5V电压供电,需要将跳帽按下图安装。

在这里插入图片描述USB转串口模块可以使用5V、3V3电压供电,需要将跳线帽进行安装。
在这里插入图片描述

可以对USB转串口模块进行测试,将USB的电压引脚用跳帽接上,然后将RXD和TXD两个引脚用跳帽或者杜邦线接上。
在这里插入图片描述

然后打开串口终端,点击“手动发送”或者“自动发送”,如果在接收区可以接收到数据,说明USB转串口模块工作正常,否则需要检查接线是否正确、电路板元器件是否损坏。

下图是USB转串口模块的一些功能模块的标示,USB转串口电路板背后还预留了一些全信号输出的接口,可以将电线直接焊接在这些引脚上来使用预留的功能。
即便管脚没有这么多,但功能都是差不多的。
在这里插入图片描述下图是对USB转串口模块的引脚标示
在这里插入图片描述USB转串口电路板与单片机的接线图,VCC接线是为了单片机供电,USB转串口的RXD引脚与单片机的TXD引脚相连,USB转串口的TXD引脚与单片机的RXD引脚相连,两者的GND引脚直接相连。
在这里插入图片描述

三、参考

1.https://blog.csdn.net/eker_ch/article/details/21043591
2.https://blog.csdn.net/sternlycore/article/details/86412267
3.https://www.jianshu.com/p/a942e8090e01
4.https://blog.csdn.net/wangjiaweiwei/article/details/49612207
5.https://blog.csdn.net/qq_56802444/article/details/120888979?spm=1001.2014.3001.5501

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-10-25 12:40:09  更:2021-10-25 12:40:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:37:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码