串口的定义,232,485,UART,TTL之间的区别和关系到底是什么

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

作者只是刚刚接触嵌入式没多久的新手,这第一篇文章是抱着抛砖引玉的想法。如有错误或讲述不明确的地方希望能有大佬多加斧正。


一、TTL, 232,与485之间的关系

        首先先做一个简单的概念区分。串行通信是一个很大的概念,串口通信则是一种相对十分具体的通信方式。SPI,I2C,USB,串口通信都属于串行通信的一部分。真正区分串口通信和SPI,I2C,USB等的是通信时序。与USB,SPI不同,串口通信使用的是串口通信时序。换句话说,采用串口通信时序的都可以被称为广义的串口。

       而如果要理解串口通信时序这一概念,就必须先理解通信接口标准的组成。通信接口标准由通信时序和电平标准两个部分组成,如图:

        RS485和232的构成则如下图:

        RS485,232接口标准都采用了串口通信时序,因此有了俗称的485,232串口这种说法。

        这里也深入介绍一下串口通信时序,首先串口通信属于串行通信的范畴,因此遵从一次一个bit的传输方式。同时串口通信是异步通信,不需要在收发双发之间建立统一的时钟信号(无论是哪种串口上面都没有CLK)。空闲时串口传输线持续输出高电平1,直到发送方发送一个0通知传输开始。然后传输8个bit的数据,传输完之后再传输一位校验位,最后发送1表示停止。

      这张WIKI上面的图显示的是数据位为7bit 的情况

By Aeroid - Own work MIL-STD-188-100, pg. B-8, Fig 3, 1972. (different scan), CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=127125356

以一般比较常用的9600波特率,8数据位,无校验,1停止位协议发送'O'举例,O的ASCII码位0x4F,二进制为01001111,小端(LSB)传输格式如下

引用自Serial Communication - SparkFun Learn )

接下来简单介绍一下232电平标准和485电平标准

232与485传输“0”字符(LSB)

引用自Standard RS-485

找不到很漂亮的TTL,232,485同时出现的图,这里就先介绍一下232和485,232电平标准中-12V~-3V为0,+3~+12V为1。而485电平标准中AB线差值+0.2V~+5V为1,-0.2V~-5V为0。二者在传输“0”时形成的波形完全是反相的。具体内容在本文中不作引申,大家只要知道两者的电平标准完全不一样就行,TTL同理。

TTL电平示例

引用自Serial Communication - SparkFun Learn )


二、USB和UART

        平常有时也会听到UART串口和COM串口这两种说法。

        串口的名称对应为串行通信接口。UART串口和COM串口的解释主要在接口这个部分上,这两个是通讯接口,但不是通信标准,而上一个部分中提及的所有传输方式都是通信标准。

        串口在PC电脑和一般电子设备上指的是COM,在单片机上指的就是UART。COM特指台式计算机或一些电子设备上的D-SUB外形的串行通信口,采用(注意是采用)的是232电平标准。但是COM如今已经被USB取代,一般通过USB映射实现COM。UART则是实现串口收发的逻辑电路,采用的是TTL电平标准。因此这两种说法并无不可,只是不要和前面的标准混为一谈就行。


举例

        在了解了上述概念后可以过一遍电脑与单片机通过485连接的过程。已知电脑上的USB采用的是USB电平标准,单片机UART采用的是TTL电平标准,用一根USB转 485的线到底实现了怎么样的转换过程。

        从单片机这端出发,芯片自带的UART电路采用TTL电平。第一步就是通过485芯片(一般常见的是MAX485,正点原子的F103精英板上使用的是SP3485)将TTL电平转为485电平协议。485电平通过A,B端传输之后再通过USB转RS485芯片(一般情况下这种芯片都是可以转换多种电平的,如CH340,FT232RL)输入电脑。

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值