TTL和RS232之间的详细对比
【背景】
之前就听过TTL,一直没搞懂其和RS232的区别。
最近,打算去买个USB转RS232的芯片,结果找到此产品:
六合一多功能USB转UART串口模块CP2102 usb TTL485 232互转自恢复
正面:
![]()
背面:
![]()
其中的:
![]()
以及引脚说明:
![]()
都提到了,不仅仅支持RS232,还支持TTL。
所以,再次遇到TTL,需要去搞清楚,TTL和RS232的区别。
【折腾过程】
1.参考:
RS-232 vs. TTL Serial Communication
整理如下:
常见的微控制器中,都有了内置的UART(Universally Asynchronous Receiver/Transmitter)。
UART可以用来已串行方式收发数据。
UART是,以固定的某个速率(1200bps,9600bps,115200bps等),一次只能只传输一个bit比特位(所以叫做串行传输)
这种串行通信的方法,有时候也被叫做TTL(Transistor-Transistor Logic)Serial。
这种串行通信,在TTL级别上来说,对应的物理电平,始终是在0V和Vcc之间,其中常见的Vcc是5V或3.3V。
其中:
逻辑高电平==’1’==Vcc
逻辑低电平==’0’==0V
与此相对应的是:
你的(台式机,笔记本等)电脑中的串口,是和RS232(通信标准)所兼容的(所一致的) => 不是和TTL的标准所一致的
RS232和TTL在软件协议层面是一样的
RS232的标准中,和你的微控制器中的串行信号所一样的,有:
- 也是:一次只传输一个bit比特位 -> 表示是serial
- 也是:也是以某个固定的速率去传输的->baudrate
- 也是:带或不带,parity极性->即校验位
- 也是:带或不带,停止位stop bit(s)
RS232和TTL唯一不同在于硬件:电平表示的逻辑含义不同(相反)
RS232和TTL,唯一的,最根本的不同在于:
硬件(机制)不同:
(1)TTL
逻辑高电平==’‘==Vcc==3.3V或5V
逻辑低电平==’‘==0V==0V
(3)RS232:
逻辑高电平==’‘==负电压== -3V~-25V==常为:-13V
逻辑低电平==’‘==正电压== 3V~25V==常为:13V
为何RS232中要(很奇怪的)用负电压表示逻辑高电平呢?
按理来说:
TTL用正电压(3.3V或5V)表示逻辑1,用0电压表示逻辑0,是相对来说,比较符合人类的逻辑的
但是,为何RS232却,很奇怪的,用负电压表示逻辑高电平==1,呢?
那是因为:
此设计(用负电压表示逻辑1,正电压表示逻辑0)相对来说,更加:
- 抗(外界的电磁)干扰
- 抗外界的(电磁信号)噪音干扰
- 抗(信号的)衰减
- 使得和同样的TTL信号相比,RS232信号可以传输的更远
由此使得:
信号传输,相对更加稳定和可靠。
RS232和TTL时序图对比
对于同样传输0b01010101来说,RS232和TTL的时序对比:
![]()
RS232和TTL之间的转换
RS232和TTL之间的转换,不仅仅是简单的电平转换,还要考虑到其他一些因素,比如调节和矫正一些电平(提高或降低对应的电平),确保可能的有害的RS232电压不会破坏微控制器的串口针脚。
关于如何在RS232和TTL之间转换,目前已经有很多种解决方案了。
比如:
RS-232 vs. TTL Serial Communication
中的MAX-232。
总结
很多知识,都是慢慢积累,才慢慢逐渐更加清楚的。。。
包括这个TTL。
TTL和RS232之间的详细对比的更多相关文章
- TTL 和 RS-232
下面详细讲解下面这三种的区别 USB转TTL串口板(常用芯片PL2303,CH340) USB转RS-232串口线 TTL转RS-232串口板,RS-232转TTL串口板(常用芯片MAX3232,MA ...
- 中国正式发放5G牌照 详细对比中美两国5G实力
今天,中国5G商用走进新里程:工信部向中国电信.中国移动.中国联通.中国广电发放5G商用牌照,中国也成为继韩国.美国.瑞士.英国后,第五个正式商用5G的国家. 按照之前的规划,中国原定于2020年开启 ...
- TTL、RS232、RS485、串口
Point: 1.串口.COM口是指的物理接口形式(硬件).而TTL.RS-232.RS-485是指的电平标准(电信号). 2.接设备的时候,一般只接GND RX TX.不会接Vcc或者+3.3v的电 ...
- jmeter BeanShell实例-----两个变量之间的断言对比
jmeter BeanShell实例-----两个变量之间的断言对比 在jmeter的中,断言没法对两个变量的进行对比后判断,只能使用Bean Shell断言来进行,总是有人来问怎么写呢.这里写一个简 ...
- 串口、COM口、TTL、RS-232、RS-485区别详解
1.串口.COM口是指的物理接口形式(硬件).而TTL.RS-232.RS-485是指的电平标准(电信号). 2.接设备的时候,一般只接GND RX TX.不会接Vcc或者+3.3v的电源线,避 ...
- 【转】SVN 与 GIT 详细对比
git和svn的详细对比 近期就[版本管理工具是否进行切换SVN->Git]的问题进行了讨论,于是对svn和Git进行了相关研究,进而梳理出Git的特点(优.缺点),最后将Git与SVN进行 ...
- “全栈2019”Java第六十六章:抽象类与接口详细对比
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- MySQL与Oracle的语法区别详细对比
MySQL与Oracle的语法区别详细对比 Oracle和mysql的一些简单命令对比在本文中将会涉及到很多的实例,感兴趣的你不妨学习一下,就当巩固自己的知识了 Oracle和mysql的一些简单 ...
- jmeter BeanShell实例-----两个变量之间的断言对比(转)
jmeter BeanShell实例-----两个变量之间的断言对比 在jmeter的中,断言没法对两个变量的进行对比后判断,只能使用Bean Shell断言来进行,总是有人来问怎么写呢.这里写一个简 ...
随机推荐
- SQL Server 2005高可用性模式下创建数据库镜像
SQL Server 2005高可用性模式下创建数据库镜像 高可用性模式下创建数据库镜像 第一步: --创建镜像用数据库-在主服务器上操作 create database db_mirror on ...
- 超级硬件代理解决企业Web提速上网问题
超级硬件代理解决企业Web提速上网问题 需求分析: XX集团是五家企业重组建立的特大型工程勘察设计咨询企业,下设10多个分公司,上网人数众多.有多台WEB server,对外服务,访问量及大.以前无论 ...
- vue父子间通信案列三($emit和prop用法)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ES6学习笔记(二)变量的解构与赋值
1.数组的解构赋值 1.1基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. let a = 1 ...
- java实现折半查找
package althorgrim;/** * 1.必须采用顺序存储结果 * 2.关键字必须有序 * @author hanrk-2734 * */public class TestBinarySe ...
- 洛谷 P3913 车的攻击
P3913 车的攻击 题目描述 N \times NN×N 的国际象棋棋盘上有KK 个车,第ii个车位于第R_iRi行,第C_iCi 列.求至少被一个车攻击的格子数量. 车可以攻击所有同一行或者同 ...
- openssl之EVP系列之5---EVP_Encrypt系列函数具体解释(二)
openssl之EVP系列之5---EVP_Encrypt系列函数详细解释(二) ---依据openssl doc/crypto/EVP_EncryptInit.pod和doc/ssleay.t ...
- JNI之——Can't load IA 32-bit .dll on a AMD 64-bit platform错误的解决
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46605003 在JNI开发中,Java程序须要调用操作系统动态链接库时,报错信息: ...
- HDU 5384 Danganronpa (AC自己主动机模板题)
题意:给出n个文本和m个模板.求每一个文本中全部模板出现的总次数. 思路:Trie树权值记录每一个模板的个数.对于每一个文本跑一边find就可以. #include<cstdio> #in ...
- javafx virtual keyboard
public class EffectTest extends Application { @Override public void start(final Stage stage) { final ...