用分立元件实现串口通讯TTL/RS232电平转换
1.计算机串口通信的RS-232电平:用正负电压来表示逻辑状态.逻辑1= = -3V~-15V,逻辑0=+3~+15V。
2.单片机串口通信的TTL电平:输出高电平>2.4V,输出低电平<0.4V。在室温下,一般输出高电平是3.5V,输出低电平
是0.2V。最小输入高电平和低电平:输入高电平>=2.0V,输入低电平<=0.8V,噪声容限是0.4V。
由于计算机的串口通信使用的是RS-232标准的电平协议而单片机的串口采用的是TTL电平,为了实现单片机与计算机之间的
通信就必须进行TTL/RS232电平之间的转换,集成转换芯片就可以实现两者之间的转换,如果自己搭建电路进行转换也可以
实现。
转换的原理图如下:
左边的是DB9串口,电脑主机后面的那个与显示器连接的就是这个,右边的TXD与RXD是单片机的引脚,电源VCC是+5V
(一)TTLàRS-232电平的转换原理
I)
TXD=L=0时,因为T1是NPN型三极管所以Q3会导通,而导通电阻是比较小的所以PCRXD的电压与VCC相同,都
II)TXD=H=1时,此时Q3是截止的(截止电阻非常大),而PCTXD的电平是-3~-15V之间,当PCTXD的电平是-3V时二极管D1导通,电容C7充电,上负下正,电容C7的上极板电位最终被钳在-3V之间(呵呵假设二极管是理想二极管,没有导通压降)由于电容的作用会保持一段时间,而PCRXD的电位与电容C7的上极板电位是等同的都是-3V,同理可知当PCTXD的电平是-15V时PCRXD的电位也是-15V
(TTL)
(TTL)
(二)RS-232àTTL电平的转换原理
当PCTXD为-3~-15时显然Q4是处于截止状态的,RXD的电平与VCC相等的为+5V是逻辑1
当PCTXD为+3~+15V时显然Q4是处于导通状态的,RXD的电位为0是逻辑0
(TTL)
当PCTXD为+3~+15V(RS-232)时转换后的TTL电平为0V是
用分立元件实现串口通讯TTL/RS232电平转换的更多相关文章
- 串口通讯之rs232 c++版本
rs232.cpp #ifndef kranfix_rs232_rs232_cc #define kranfix_rs232_rs232_cc #include "rs232.h" ...
- 串口 COM口 TTL RS-232 RS-485 区别 释疑
Point: 1.串口.COM口是指的物理接口形式(硬件).而TTL.RS-232.RS-485是指的电平标准(电信号). 2.接设备的时候,一般只接GND RX TX.不会接Vcc或者+3.3v的电 ...
- TTL电平、CMOS电平、RS232电平的区别
工作中遇到一个关于电平选择的问题,居然给忘记RS232电平的定义了,当时无法反应上来,回来之后查找资料才了解两者之间的区别,视乎两年多的时间,之前非常熟悉的一些常识也开始淡忘,这个可不是一个好的现象. ...
- TTL电平与RS232电平的区别
TTL电平与RS232电平的区别 工作中遇到一个关于电平选择的问题,居然给忘记RS232电平的定义了,当时无法反应上来,回来之后查找资料才了解两者之间的区别,视乎两年多的时间,之前非常熟悉的一些常 ...
- 单片机电平转换电路5V 3.3V串口通讯等(转)
源: 单片机电平转换电路5V 3.3V串口通讯等
- TTL电平, RS232电平以及CMOS电平的区别
TTL电平标准 输出 L: <0.8V : H:>2.4V. 输入 L: <1.2V : H:>2.0V TTL器件输出低电平要小于0.8V,高电平要大于2.4V.输入,低于1 ...
- 单片机串口通信电平不匹配的解决电路,5V 3.3V串口通讯
很早的时候调试串口通讯遇到单片机和模块电压不匹配,信号无法传输,所以整理后来遇到的转换电路.1.最简单的用转换电平IC,可以去淘宝上搜索,有四路的有两路的,比如这个双向电平转换模块 2.根据接触的开发 ...
- Android Studio的串口通讯开发
基于android-serialport-api实现 前言RS232标准接口UARTRS232与UART转接下载 NDK 和构建工具创建支持 C/C++ 的新项目编译C/C++代码串口通讯原理关于校验 ...
- 第20章 USART—串口通讯
本章参考资料:<STM32F76xxx参考手册>USART章节. 学习本章时,配合<STM32F76xxx参考手册>USART章节一起阅读,效果会更佳,特别是涉及到寄存器说明的 ...
随机推荐
- 转:Tortoise SVN 版本控制常用操作知识
转自:http://www.cnblogs.com/csharp4/archive/2010/11/26/1889317.html 今天老大跑过来问我如何把SVN服务器上的当前版本回退到某一个版本上去 ...
- JS及JQuery对Html内容编码,Html转义
1利用jquery /** JQuery Html Encoding.Decoding * 原理是利用JQuery自带的html()和text()函数可以转义Html字符 * 虚拟一个Div通过赋值和 ...
- jquery easyui validatebox remote使用
validatebox 的validateType可以是一下3个格式: 1字符串 2数组,应用多个验证 3对象,每个key是一个验证名称value是验证的数组参数 下面是代码示例 <input ...
- Mysqldump参数大全(参数来源于mysql5.5.19源码)
参数 参数说明 --all-databases , -A 导出全部数据库. mysqldump -uroot -p --all-databases --all-tablespaces , -Y ...
- python中各类时间的计算
python获取当前系统时间: nowTime=time.localtime() 获取当前系统日期: nowDate=datetime.datetime(nowTime[0],nowTime[1],n ...
- Java Callable 与 Future
- ubuntu 设置计划任务
非常简便: crontab -e 以下是我的执行过程,输入命令后,会让我选择一个编辑器,我选的是2,因为后边写着easiest,最简单的. liuyx@myubuntu:/$ crontab -e n ...
- android 使用AChartEngine 饼图的实现
1.AChartEngine 简介 AChartEngine是为Android应用而设计的绘图工具库.可用于绘制多种图表,我使用的是achartengine-1.1.0.jar.ChartEngine ...
- 执行pig出错Unhandled internal error. Found interface jline.Terminal, but class was expected
执行pig时报例如以下错误 2015-07-14 10:41:12,869 [main] ERROR org.apache.pig.Main - ERROR 2998: Unhandled inter ...
- QueryRunner 结果处理器
package cn.itcast.dbutil; import java.sql.SQLException; import java.util.List; import java.util.Map; ...