您当前的位置:首页 > 电子 > 总线与接口/协议

聊聊你知道的串口

时间:05-21来源:作者:乐创客点击数:

TTL串口和RS232口别再傻傻分不清了

“这个STM32开发板用MCUISP怎么下载程序啊?”站在一旁的小明(化名)问我。“用那个USB转TTL的转接口下载”我回答道。过了一会,小明又来问我“这里的什么DTR,RTS选项怎么选?”。我过去一看就说“这个DTR和RTS是RS232串口独有的,我们没有用到。”小明疑惑地又问我“我们不是用的串口吗?怎么会没有?而且我之前用串口的时候,也不记得有用到这两根线啊?”。“你知道RS232和TTL的区别吗?”我问道。小明想了想说“它们两个不是一样的东西吗?”。看着他自信又天真的脸庞,我又涛涛不绝地和他说了起来……

串口是最简单的串行接口和调试工具

上点年纪的朋友都知道,最早期的51单片机可没有现在的这么多外设,什么内置ADC,SPI,CAN,I2C,DMA等等,唯一有的就只有四种类型的外设:GPIO,定时器,外部中断还有就是我们今天要说的串口。从那时候就出道的工程师一直工作到现在,接触了形形色色的MCU或者MPU,最早期的很多外设到如今已经面目全非了,或许在51单片机盛行的年代,你能很清楚地画出其IO口的内部结构,但是现在单片机的IO口显然要强大且复杂得多。真可谓沧海变桑田。不过,这些外设中唯一有一个到目前为止还是觉得那么亲切,那就是串口。尽管配置方式和之前的51单片机有着很大的不同,但是其最基本的参数如波特率,起始位,数据长度,停止位依旧是那么熟悉。

TTL串口

“串口”这一词是个含义很广的词,所有用串行方式传递数据的接口都可以被称为串口,而我们印象中最熟悉的那个“串口”其实是“TTL串口”。TTL(Transistor-Transistor Logic)也称双极型晶体管(三极管)逻辑,由于在早期的半导体都是双极型晶体管工艺的,所以就用这个名字来称呼我们常用的那个串口。在TTL逻辑中,规定了以0V表示逻辑“0”,以5V表示逻辑“1”。这种规定只是针对以前那种TTL工艺下的芯片所指定的,由于目前的半导体都为CMOS技术,因此但凡满足CMOS电平的串口也沿用了“TTL串口这个名称”。

一个“TTL串口”是由三根线组成的,分别是数据发送线(TXD),数据接收线(RXD),和公共地(GND)。在连接两个TTL串口设备的时候,需要将一片的TXD线连接到另一片的RXD线上,一片的RXD线连接到另一片的TXD线上,两片的GND线连接在一起。

RS232串口

RS232串口和TTL串口的区别在于,两者所使用的电平格式不一样。RS232的电平标准为+12V为逻辑负,-12为逻辑正。RS232在之前的台式机上,是必备的通讯接口之一,但是随着USB和后来TYPE-C USB的兴起,现在基本已经看不见其踪影。值得一提的是,RS232标准是由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。

RS232串口出现在个人计算机上的时候,往往又被称为“COM口”。目前的串口都为九线制的RS232口,其连接器的形状一般都为D-SUB 9接口,而在历史的发展中,还出现过一种25线的RS232口,但是目前已经见不到了。

在9针的RS232串口中,我们一般用来使用的也就是其中的RXD,TXD和GND这三根线,这个和TTL串口使用的数据线是一样的。而剩余的6根线分别是早期做PC和外设通讯时候的控制信号线,目前很少会用到。其实在目前的一些单片机上面,它们的TTL外设上面也都还保留了这些串口的控制线,只不过我们很少用到而已。

协议转换

TTL和RS232串口的协议转换思路其实很简单,第一步是电压的转换,将±12V的电压转换成0和5V的电压即可。第二步是逻辑的转换,将RS232的负逻辑转换成TTL的正逻辑即可。

在我们平时使用中,有一个系列的芯片可以专门用来转换TTL串口和RS232串口,这个芯片就是MAX232/MAX3232。MAX232是一种专门为电脑的RS-232标准串口设计的双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。但是如果单片机提供的信号电平和RS232的标准不一样,因此要通过MAX232这种类似的芯片进行电平转换。MAX232在使用中应该尽量避免热插拔,因为RS232的电平比较高,所以其在接通时产生的瞬时电涌会非常高,因此MAX232很有可能被击毁。

而MAX3232和MAX232的功能一样,它们最大的区别为:MAX232是5V供电的芯片,而MAX3232是3.3V供电的芯片。

另外,由于我们目前使用的笔记本电脑,基本上没有串口流出了,而仅仅留出几个USB接口,因此需要将TTL转换成USB协议,这种协议的转换就比较麻烦,但是也有特定的转换芯片。

CH340

CH340是一个USB总线的转接芯片,实现USB转串口或者USB转打印口。

其特点为:

  • 全速USB设备接口,兼容USB V2.0。
  • 仿真标准串口,用于升级原串口外围设备,或者通过USB增加额外串口。
  • 计算机端Windows操作系统下的串口应用程序完全兼容,无需修改。
  • 硬件全双工串口,内置收发缓冲区,支持通讯波特率50bps~2Mbps。
  • 支持常用的MODEM联络信号RTS、DTR、DCD、RI、DSR、CTS。
  • 通过外加电平转换器件,提供RS232、RS485、RS422等接口。
  • CH340R芯片支持IrDA规范SIR红外线通讯,支持波特率2400bps到115200bps。
  • 内置固件,软件兼容CH341,可以直接使用CH341的VCP驱动程序。
  • 支持5V电源电压和3.3V电源电压甚至3V电源电压。
  • CH340C/N/K/E及CH340B内置时钟,无需外部晶振,CH340B还内置EEPROM用于配置序列号等。
  • 提供SOP-16、SOP-8和SSOP-20以及ESSOP-10、MSOP-10无铅封装,兼容RoHS。

PL2303

PL2303 是Prolific 公司生产的一种高度集成的RS232-USB接口转换器,可提供一个RS232 全双工异步串行通信装置与USB 功能接口便利连接的解决方案。早前的PL2303很有竞争力,但是目前市场越来越多地被CH340抢去,另外它对Windows 10的兼容,简直一团糟糕。

除了CH340和PL2303,还有一些其他的芯片,如cp210x等,但是这些芯片中,我首推的还是CH340,因为这个芯片是国产的,而且价格便宜,电路简单。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门