提到总线控制器,因每个人接触的领域不同,可能第一时间想到的总线定义都不同。有的想到的是 RS485 总线,有的是 RS232 总线,有的是 CAN 总线,有的是 PCI 总线,但是有一点是共同的,总线千千万,通信掉线时常有。如何让你的总线接口在通信时候不翻车?除了可靠的硬件电路设计,你还得需要可靠的总线控制器芯片,来看看全球顶级的产品设计公司都在选些什么总线控制器。
下图是节选至目前 Bom2buy (由 Findchips 上权威的数据提供支持)展示的总线控制器 TOP 10 热度排行榜。
从器件排行榜上可以看到目前热度最高的总线控制器为 FTDI 公司的 FT232RL-REEL,而 TOP 10 排行中 FTDI 占据了 3 个位置,据此不难推测出两点:FTDI 的产品受到用户认可;USB 转串口的市场需求非常大,毕竟 FTDI 的这 3 款器件都是 USB 转串口功能。
其次的话,Silicon labs 以及 Microchip 的 USB 转串口器件也占据了 TOP10 榜单的 3 个名额,再一次验证了全球使用频率最高的总线接口莫过于 USB 转串口了。最后剩下的都是博通的 PCI 接口,这种总线接口在工业、服务器、云存储等领域就用的比较多了,所以同样牢牢占据前 10 的宝座,但是都是属于同一家公司的产品,这就非常恐怖了,如果只从数据上来看,基本属于行业垄断了。
总线控制器 | ||||
热度排行 | 厂商 | 型号 | 市场均价 | 总库存 |
1 | FTDI | FT232RL-REEL | ¥32.16 | 487,238 |
2 | FTDI | FT232RQ-REEL | ¥32.09 | 239,599 |
3 | Silicon Labs | CP2102-GMR | ¥25.95 | 257,494 |
4 | Broadcom | PEX8311-AA66BCF | ¥490.86 | 2,817 |
5 | Broadcom | PCI9030-AA60PIF | ¥751.70 | 462 |
6 | Silicon Labs | CP2102-GM | ¥27.38 | 92,294 |
7 | FTDI | FT2232HL-REEL | ¥47.85 | 65,368 |
8 | Microchip | USB2514BI-AEZG-TR | ¥23.25 | 82,057 |
9 | Broadcom | PEX8112-AA66BIF | ¥199.37 | 2,040 |
10 | Broadcom | PCI9054-AC50PIF | ¥1,159.56 | 4,513 |
那么问题来了,这个数据是否可靠?相信即便我不问,有大批同志要喷了,“我大中国几块钱的 USB 转串口芯片不香嘛,为什么没上榜?这 30 多块钱一颗的能排第一?”
言之有理。据我推测,这个数据应该是不包含国产器件的,所以,在国内非常热门的 USB 转串口芯片如 CH340、PL2303 都不在榜内。但是,无论作为采购人员还是硬件工程师,产品设计选型永远不会只考虑价格。虽然说这个榜单中的 FT232 价格贵,但胜在稳定可靠,所以即便贵,还是在很多 USB 转串口、编程器中使用这种方案。而像 CH340 这种虽然很便宜,确实也适合简单、低成本的 USB 转串口电路中,但是一旦波特率达到 115200,可能就会出现不稳定,延迟等问题。总之一句话,适合的才是最优的。所以无论是国产还是国外产,其实殊途同归,最终还是为产品服务。你需要更稳定可靠,性能更高的,那就选高端一点;如果本身就是走性价比路线,对性能无要求,那么便宜到白菜价的国产转串口芯片仍旧是首选。
回到本文的话题上,有一点是很明确,无论选择国内还是国外的器件,USB 转串口芯片是所有总线接口中需求量最大的,为何有这么大的需求量?都可以应用在哪些地方呢?
就以占据“国外”热门器件榜首 FT232RL 为例,来看看 USB 转串口芯片的应用方向。
作为 FT232 这颗器件最基本的应用功能,当然是 USB 转 RS232 接口了,其硬件电路设计如下图所示。
在 FT232R 的串行 UART 接口上使用 TTL 到 RS232 电平转换器 IC,将 FT232R 的 TTL 电平转换为 RS232 电平。可以使用目前通用的“ 213”系列 TTL 到 RS232 电平转换器来完成此电平转换。这些“ 213”器件通常有 4 个发射器和 5 个接收器,并具有内置电压转换器,可将+ 5V(标称)VCC 转换为 RS232 所需的+/- 9V。这些设备的一个有用功能是 SHDN#引脚,该引脚可用于在 USB 挂起模式下将设备断电至低静态电流。
比如 Sipex SP213EHCA,这就是一款非常合适的电平转换 IC,它能够以高达 500k 的波特率进行 RS232 通信。如果可接受较低的波特率,则可以使用几种 pin-to-pin 的替代产品,例如 Sipex SP213ECA,美信 MAX213CAI 和 ADI ADM213E,它们都适用于最高 115.2k 波特率的通信。如果需要更高的波特率,美信 MAX3245CAI 器件可支持高达 1M 波特率的 RS232 通信速率。需要注意的是,MAX3245 与 213 系列器件的引脚不兼容,MAX 器件的 SHDN 引脚为高电平有效,应连接至 PWREN#引脚而不是 SLEEP#引脚。
在上面的示例中,CBUS0 和 CBUS1 已配置为 TXLED#和 RXLED#,并用于驱动两个 LED。
其次,我们再通过 RS485 收发器,可以实现 USB 转 RS485 接口。
在此应用中,在 FT232R 的串行 UART 接口上使用 TTL 到 RS485 电平转换器 IC(Sipex SP481)将 FT232R 的 TTL 电平转换为 RS485 电平。SP481 是基于 8 引脚 SOP 封装的 RS485 器件,在发送器和接收器上都有单独的启用。使用 RS485 时,仅在从 UART 发送字符时启用发送器。正是出于此目的,提供了 FT232R 上的 TXDEN 信号 CBUS 引脚选件,因此,发送器使能端已连接到已配置为 TXDEN 的 CBUS2。同样,CBUS3 已配置为 PWREN#。该信号用于控制 SP481 的接收器使能。接收器使能为低电平有效,因此在 USB 挂起模式下,它连接至 PWREN#引脚以禁用接收器。 CBUS2 = TXDEN 和 CBUS3 = PWREN#是 FT232R 引脚的默认设备配置。
再者,USB 转 RS422 接口电路。
在此应用中,FT232R 的串行 UART 接口上使用了两个 TTL 到 RS422 电平转换器 IC,以将 FT232R 的 TTL 电平转换为 RS422 电平。同样市面上还是有很多合适的电平转换器。比如上图中使用在发送器和接收器上的 Sipex SP491。由于 SP491 发送器使能处于高电平有效,因此它以 SLEEP#配置连接到 CBUS 引脚。 SP491 接收器使能为低电平有效,因此连接到 CBUS 引脚 PWREN#配置。这样可以确保在同时启用 SP491 发射器和接收器时,设备处于活动状态;当设备处于 USB 挂起模式时,将禁用 SP491 发射器和接收器。
如果使用类似的应用,但设计是由 USB BUS 供电的,则可能有必要在 SP491 器件的 VCC 线中使用 P 通道逻辑电平 MOSFET(由 PWREN#控制),以确保 USB 待机电流为满足 2.5mA。 SP491 被指定以最高 5 M 波特率的速率发送和接收数据。在此示例中,FT232R 将最大数据速率限制为 3 M 波特率。
或者还有 USB 转 MCU 的串口应用。
在此应用中,FT232R 使用 TXD 和 RXD 进行数据的发送和接收,并使用 RTS#/ CTS#信号进行硬件握手。 同样在此示例中,CBUS0 已配置为 12MHz 输出作为 MCU 时钟。其它的话 RI#可以连接到 MCU 上的另一个 I/O 引脚,并用于将 USB 主机控制器从挂起模式唤醒。 如果 MCU 正在处理电源管理功能,则可以将 CBUS 引脚配置为 PWREN#,并将其连接到 MCU 的 I/O 引脚。
作为总线控制器中热度榜 NO.1 的器件,FT232R 还是可圈可点的,可以施展的应用空间较多,在每个产品中的应用功能也可以灵活调整,但是万变不离其宗,我认为最核心的地方还是依托于现在生态庞大的 USB 接口,因而衍生出这种足以称为电路奇迹的 USB 转串口控制器。