这个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(Transistor-Transistor Logic)也称双极型晶体管(三极管)逻辑,由于在早期的半导体都是双极型晶体管工艺的,所以就用这个名字来称呼我们常用的那个串口。在TTL逻辑中,规定了以0V表示逻辑0,以5V表示逻辑1。这种规定只是针对以前那种TTL工艺下的芯片所指定的,由于目前的半导体都为CMOS技术,因此但凡满足CMOS电平的串口也沿用了TTL串口这个名称。
一个TTL串口是由三根线组成的,分别是数据发送线(TXD),数据接收线(RXD),和公共地(GND)。在连接两个TTL串口设备的时候,需要将一片的TXD线连接到另一片的RXD线上,一片的RXD线连接到另一片的TXD线上,两片的GND线连接在一起。
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外设上面也都还保留了这些串口的控制线,只不过我们很少用到而已。
本文由梁桂钊于2023-08-20发表在梁桂钊的博客,如有疑问,请联系我们。
本文链接:https://720ui.com/8029.html