电平是什么

理想的数字电路电平是这样的:
输入小于1/2VCC(电源电压)就是低电平,反之是高电平。实际的器件是做不到的,也不实用,如果输入电压在1/2VCC附近有干扰,就会发生错误的输入信号。现在常用的是:TTL数字电路电源是5V,2.7V < 高电平 < 5V, 0V < (=) 低电平 < 1.3V。CMOS数字电路电源电压一般是3V–9V, 2/3VCC < 高电平 < (=) VCC,0V < (=) 低电平<1/3VCC。

单片机的I/0口输入和输出,1和0是什么

1和0是数字信号,当单片机的I/0口输入和输出为高电平时,1对应高电平,如果是3.3V系统,高电平就为3.3,如果为5V,那高电平就为5V。当单片机的I/0口输入和输出为低电平时,就是近似为0V电压,就表示为0。
所以,数字量就是这种高低电平的信号组成的。

什么是TTL电平

TTL电平信号被利用的最多是因为通常数据表示采用二进制规定,+5V等价于逻辑“1”,0V等价于逻辑“0”,这被称做TTL(晶体管-晶体管逻辑电平)信号系统,这是计算机处理器控制的设备内部各部分之间通信的标准技术。

电平是一个连续变化的电压范围,为了用这种模拟量的电压来表示数字量的逻辑1和逻辑0,TTL电平规定:
对于输出电路:电压大于等于(≥)2.4V为逻辑1;电压小于等于(≤)0.4V为逻辑0;
对于输入电路:电压大于等于(≥)2.0V为逻辑1;电压小于等于(≤)0.8V为逻辑0;
TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限(噪声容限是指在前一极输出为最坏的情况下,为保证后一极正常工作,所允许的最大噪声幅度 [1] 。噪声容限越大说明容许的噪声越大,电路的抗干扰性越好 [1] 。)就只有(0.8-0)/2=0.4V,高电平的噪声容限为(5-2.4)/2=1.3V。

TTL电平分析

此部分引用文章(如有侵权请联系作者删除):
https://blog.csdn.net/shenwansangz/article/details/124461476

1.TTL电路基本原理

要实现输出电平在0/1之间变换,需要三极管的数量最少只需要一个,而TTL电路使用了4个三极管,用较多的器件去实现相同的功能,必定要有性能上的提升,否则这种电路设计就是一种浪费。对于TTL电路而言,使用成倍的器件需要换来的性能包括以下几点:

提高开关速率
提高带载能力
提高抗干扰性


TTL电路如上图所示,当输入A/B有一个为低电平时(假设为0V),T1管的基极被钳位到0.7V,不足以使得T2、T4管导通,所以T2的集电极电位为高,T3导通,Vout输出为高。当A/B输入都是高电平时(假设为3.6V),则T1的基极电压为4.3V,该电压可以使T2、T4饱和导通,从而T1的基极电位被钳位在2.1V(三个PN结的压降),T4导通后,T4的基极电位为0.7V,T2此时为饱和导通,导致T3的基极电位大概为1V左右,这个电压不足以使得T3和二极管D同时导通,故Vout输出为低电平。

在TTL电路中,使用推挽输出目的时为了增强带载能力;二极管D可以砸T4导通时,防止T3导通导致T3、T4直通;T2的设置主要是为了给T3、T4提供驱动。在Vout由低变高时,T2的基极电荷在T1的作用下被迅速抽走,关断比较快,T2关断,T3即打通。但是T4的基极电荷只能通过R4放电,导致T4关断得比较慢,如此以来,就有一小段T3、T4直通的时间,因此需要增加电阻R3限制短路电流。

2.为什么T2、T4为饱和导通

首先看T4,T4导通时,其基极电压为0.7V,输出端与后级电路匹配时,Vout通过下一级的R1、T1的发射结上拉到VCC,这个集电极电阻足以使其饱和导通(不行就设置好R1的阻值)。T2使必须要饱和导通的,因为T2工作在放大区会使Vout的输出具有不确定性(影响T3的基极电位),T2的饱和导通是由其基极电流保证的。如前述,T2导通时,T1的发射结反偏,集电结正偏,三极管T1工作在倒置态。此时T2基极电流与T1基极电流相当,设置R1即可保证使2饱和。

3.如何理解三极管T1的倒置工作状态

随便翻开一本教材或者TTL的资料,都会写三极管T1在输入为高电平的时候,处于倒置放大的工作状态,这种感觉好像是电路设计者精心这么设计的,故意使用三极管的倒置放大来实现什么目的,但对为什么这么用又没有下文。实际上,这只是对三极管工作状态的一种客观描述。我建议教材不要单独把这个状态单独强调一下,没有什么用还容易误导人,除非把龚总原理给讲清楚。得出以上结论的理由如下:

首先,三极管各个级之间是有寄生电容的,当三极管由导通变为截止时,先要把基极的电荷给放掉,这个放电过程需要时间,直接影响三极管的开关速度,这是前提。

采用TTL电路的解法时,当输入为高电平时,T1倒置放大,T2的饱和由R1保证;当输入由高变低时,T1的基极被钳位到0.7V,由于T2、T4关断需要时间,T1的集电极电位仍保持在1.4V,因此,T1处于放大状态,可以迅速地抽取T2基极的电荷,使T2迅速关断。如果换一种接法,让T1的集电极作为输入,如下图所示:

当T1的输入为高时,T1的基极电位为2.1V,集电结反偏,发射结正偏,该电流可以使得T2饱和导通。当T1的输入由高变低时,T1的基极电位为0.7V,发射极电位为1.4V,T1处于倒置放大状态,此时T2的基极电流显然要小于T1处于放大区的电流,因此T2需要更长的时间关断,影响了其开关速度。

通过以上说明可以发现,T1是否工作在倒置放大无需额外说明,哪种接法能提供更快的开关速度才是关键。

4.电平门限计算

TTL电平门限也是没有标准的,因厂家而异,但也需要满足一定的范围,以图1电路为例,计算如下。

输出高电平:


如果输入电平由高逐渐降低时,降到0.7V,T4会先关闭,T2仍然导通,此时假设R4的电压为临界值0.7V,则,T3的基极电压为:

因此,有:


输出低电平视饱和程度,取最大不超过0.4V。

输入低电平:

输入为低时,输出应为高,前面已经分析,要使输出为高,临界条件为T4刚关闭时,此时输入不应超过1.4V。假如以不以T2导通为标准,则输入低电平最大不应超过0.7V。

输入高电平:

按前述分析,输入高电平最低不应低于1.4V。

TTL、CMOS、RS232、RS485电平差异

(一)TTL电平标准

电平是一个连续变化的电压范围,为了用这种模拟量的电压来表示数字量的逻辑1和逻辑0,TTL电平规定:

对于输出电路:电压大于等于(≥)2.4V为逻辑1;电压小于等于(≤)0.4V为逻辑0;

对于输入电路:电压大于等于(≥)2.0V为逻辑1;电压小于等于(≤)0.8V为逻辑0;

TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限(噪声容限是指在前一极输出为最坏的情况下,为保证后一极正常工作,所允许的最大噪声幅度 [1] 。噪声容限越大说明容许的噪声越大,电路的抗干扰性越好 [1] 。)就只有(0.8-0)/2=0.4V,高电平的噪声容限为(5-2.4)/2=1.3V。

(二)CMOS电平标准

输出 L:<0.1Vcc ; H:>0.9Vcc。 输入 L:<0.3Vcc ; H:>0.7Vcc.

由于CMOS电源采用12V,则输入低于3.6V为低电平,噪声容限为1.8V,高于3.5V为高电平,噪声容限高为1.8V。比TTL有更高的噪声容限。

CMOS电平能够驱动TTL电平;

TTL电平不能驱动CMOS电平,需要加上拉电阻

(三)RS232标准

逻辑1的电平为-3~-15V,逻辑0的电平为+3~+15V,注意电平的定义反相了一次。

RS232的电平标准为+12V为逻辑负,-12为逻辑正,TTL电平为5V为逻辑正,0为逻辑负

(四)RS485标准

RS485采用差分信号负逻辑,逻辑"1”以两线间的电压差为+(2~6)V表示;逻辑"0"以两线间的电压差为-(2-6)V表示。
TTL接口电平常见的有3.3V和5V的。通过在0和TTL电平之间摆动,来传输数据。需要通讯双方“约定”好速率。也就是说,通过TTL电平传输的UART接口是一种不传输时钟的"异步通讯"方式。

而RS485接口,简单说就是把TTL的“0-3.3V/5V之间摆动”的信号,转换为“5V压差颠倒反转的AB线信号”,并且扩流驱动电缆电容。简单说就是这样。

所以可以理解为,RS485是以TTL数据源的总线驱动芯片。

RS485采用差分信号逻辑,更适合长距离、高速传输。

接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容,可方便与TTL电路连接。

usb转ttl

USB是一种串口(串口是一大类接口,包括但不仅限于RS232),它拥有复杂的通讯协议,支持热插拔,并可以以非常快的速度传输数据。

TTL是指晶体管逻辑电路的电平,TTL和RS232之间只是信号电平不同,没有别的区别。USB也是TTL电平,但51单片机没有集成USB控制器,所以不支持USB直接下载,并且由于USB协议非常复杂,一般也不使用51单片机软件来模拟USB。

usb转ttl模块有什么用

单片机通信接口的层次逻辑不同于PC机通信接口的层次逻辑,PC机的通信接口有USB接口,对应的电平逻辑遵循USB原理;有DB9接口(九针接口),对应的电平逻辑遵循RS-232原理;单片机的串行通信通过单片机的RXD、TXD、VCC和GND四个引脚,相应的电平逻辑遵循TTL原则。

USB到TTL模块的功能是将双方识别的电平转换为通信电平。

USB转TTL串口模块是一个非常实用的工具,可以测试模块的UART串口通信和通过单片机的UART接口给单片机等下载程序。能够在电脑上的串口助手软件非常直观的显示出串口设备返回的数据以及发送相应的控制数据给串口设备。
常见的有CP2102、PL2303、FT232、CH340等串口芯片方案的USB转串口模块。

CH340模块驱动安装

可参考文章:
https://blog.csdn.net/qq_42250136/article/details/120434343

电平之间的转换

此部分引用文章(如有侵权请联系作者删除):
https://www.elecfans.com/emb/jiekou/20180105611247.html
PC机上的通信接口有USB接口,相应电平逻辑遵照USB原则;还有DB9接口(九针口),相应电平逻辑遵照RS-232原则。

而我们的单片机上的串行通信通过单片机的RXD、TXD、VCC、GND四个引脚,相应电平逻辑遵照TTL原则。

当然,新手小白买的学习板上肯定都已经集成了类似PL2303、CP2102之类的USB转TTL芯片,相应接口也变成了USB接口;有些学习板上集成的是MAX232之类的TTL转RS-232芯片,相应的接口也变成了DB9接口。

转换的目的是把电平转换到双方都能识别,下面分类举例:

情况1:PC机USB口与不带电平转换芯片的单片机通信
方法:外购USB转TTL模块,如下图所示。该模块一端接入PC机的USB接口,另一端有TXD、RXD、GND、5V、3.3V五个引脚,分别与单片机的RXD、TXD、GND、5V引脚相连,对于采用3.3V供电的单片机则把5V改为3.3V即可。该模块核心就是一块PL2303、CP2102芯片进行USB与TTL电平的转换。

情况2:PC机USB口与集成了USB转TTL芯片的单片机通信
方法:直接用USB线连接即可,只是单片机上的USB接口形式有时会不同,根据A-USB、B-USB、micro-USB、mini-USB分别选择合适的接线

情况3:PC机USB口与集成了TTL转RS-232芯片的单片机通信
方法:外购USB转RS-232模块,如下图所示。该模块核心是在DB9的一端有一块CH340或CH341电平转换芯片,把RS-232电平转换为USB电平

情况4:PC机DB9接口与不带电平转换芯片的单片机通信
方法:外购RS232转TTL模块,如下图所示。该模块一端是DB9与PC机DB9连接,一端是RXD、TXD、VCC、GND与单片机相应引脚连接。其核心是一块max232电平转换芯片。

情况5:PC机DB9接口与成了USB转TTL芯片的单片机通信
方法:一般不会这么进行通信PC机上DB9接口都有了还会没有USB接口?如果非要进行,外购RS-232转USB模块,如上面提到过的

情况6:PC机DB9接口与成了RS-232转TTL芯片的单片机通信
方法:直接用DB9(串口线)连接即可!

用一张图总结一下一上几种情况:

最后,别忘了PC端还要安装相应的驱动程序哦!

电平是什么?单片机的I/0口输入和输出,1和0是什么?什么是TTL电平?TTL电平分析?TTL、CMOS、RS232、RS485电平差异?usb转ttl?CH340模块驱动安装?电平之间的转换?相关推荐

  1. 单片机实验汇编2--P1口输入、输出实验

    P1口输入.输出实验 一.实验要求 1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮. 2.P1口做输入口,接八个扭子开关,以实验机上74LS273做输出口,编写程序读取开关状态, ...

  2. boost::units模块实现测试数量之间的转换的测试程序

    boost::units模块实现测试数量之间的转换的测试程序 实现功能 C++实现代码 实现功能 boost::units模块实现测试数量之间的转换的测试程序 C++实现代码 #include < ...

  3. 黑金AX310开发板 CP210x USB to UART Bridge Controller 驱动安装

    使用黑金AX310开发板做串口实验,但是COM一直打不开,在其他设备中CP210x一直显示黄色叹号 尝试使用野火工具包中的CH340安装驱动,不管用,直接搜索CP2102N USB to UART B ...

  4. CP2102 USB to UART Bridge Controller 驱动安装

    现象表现为,用USB线连接串口和电脑后,串口调试助手搜索不到设备,设备管理器显示驱动不可用(如上图) 解决办法:CP2102 USB to UART Bridge Controller 驱动安装(wi ...

  5. 输入一组整数,0结束输入,之后输出输入的最大的和最小的整数.【思路】

    package com.ykmimi.new1; /*** 输入一组整数,0结束输入,之后输出输入的最大的和最小的整数.*/ import java.util.Scanner;public class ...

  6. 域格 ASR CAT1 系列 模块驱动安装及升级

    一.驱动安装 1.下载口驱动安装 模块开机后首先进入下载模式,若升级工具打开,则开始下载,若未打开则模块进 入正常开机模式. 若模块第一次在电脑上运行,则开机后下载端口驱动未安装,如下图: 下载端口的 ...

  7. U盘插3.0口不识别,插2.0口识别

    昨天给别人拷安装包,拷完之后把U盘拔下来的时候发现需要用很大力气才能拔下来,随之还在感叹这新电脑--然而今天就出现了如题的问题. U盘基本信息: 金士顿USB3.0 主要症状: 1.插入USB 3.0 ...

  8. 【PC工具】常用USB转串口芯片CH340G,驱动安装有可能遇到的问题及解决办法

    这是一款常用的USB转串口芯片,价格便宜(arduino nano上用的就是这个或者他的兄弟).深受创客爱戴. 特点总结: 1便宜 2封装好焊接(手焊) 3质量还行(还没遇到这货坏了的产品) 但有些电 ...

  9. Matlab/Admas联合仿真提示 输入位移曲线 输出速度曲线为0的解决方法

    Matlab/Admas联合仿真 输入位移时输出速度为0的解决方法 解决方法:将Adams Solver type(求解器类型)由C++改为Fortran就可以解决. 建立一个小球,添加一个与地面连接 ...

最新文章

  1. svg 点击 事件_使用 SVG 实现圆环日期选择器
  2. 计算机二级题目小汽车大客车,浙江省计算机二级办公软件Excel练习题.xls
  3. Spring框架版本命名规则
  4. oracle学习笔记一:用户管理(2)创建删除用户
  5. 淮阴工学院计算机答辩,淮阴工学院关于做好2014级研究生学位论文答辩工作的通知...
  6. linux bcc_使用bcc / BPF在Linux中分析性能的7种工具
  7. Python中Youki使用索引快速为数组或矩阵赋值的技巧
  8. 据说微软已撤销了测试部门?
  9. js生成二维码 中间有logo
  10. antd的timePicker.RangePicker设置结束时间不可早于开始时间
  11. 北京到济南的长途汽车一览表
  12. 期末前端web大作业——HTML+CSS+JavaScript仿京东购物商城网页制作(7页)
  13. linux修改ip地址详解
  14. 二义性和C++消除二义性
  15. C#实践——计算GPA
  16. java 7z压缩算法_7z压缩
  17. 如何提高学生习作水平
  18. eclipse 背景色
  19. Android Studio导入安卓项目解决grade的版本不匹配问题
  20. 七年级 电子计算机 教材分析,七年级信息技术下册教学计划

热门文章

  1. python影评_python爬虫及结巴分词《攀登者》影评分析
  2. 使用超级用户登录系统linux,登录和退出Linux系统
  3. Python 的类(菜鸟教程)
  4. 国产类 postman 软件推荐给你~
  5. 如何获得当前屏幕顶端距离整个页面最上端的距离(即js获取浏览器滚动条距离顶端的距离)
  6. mac 更换jupyter的默认启动浏览器
  7. flex中的flex-grow、flex-shrink、flex-basis及缩写属性flex的使用场景
  8. Python学习笔记第一天----字符串和列表
  9. RAD0.1 RB.1/.2
  10. “”与“==”的优先级谁更高?