介绍两种一分四串口(UART)扩展芯片
在某些产品中,有时可能需要多个串口,控制多个设备。矛盾的是,CPU通常不会有那么多串口,所以这个时候就需要通过合适的方式进行串口扩展,或者通过Local Bus,或者SPI,或者USB接口。在本文中我想为读者介绍两款比较实用的串口(UART)扩展芯片,一种是SPI转UART,一种是USB转UART,都是一分四的。SPI转串口(UART)一分四
MAX14830是Maxim公司的一款四通道通用异步收发器(UART),每路UART带有128字先入/先出(FIFO)接收和发送缓存器,以及高速串行外设接口(SPI™)或I²C控制器接口。PLL和分数波特率发生器为波特率编程和参考时钟选择提供了极大灵活性。
MAX14830EVKIT
4路UART中的每一路均可通过带内SPI/I²C寻址选择。收发器和控制器接口的逻辑电平转换能够方便地连接微控制器、FPGA以及不同供电电压的收发器。
丰富的功能设计简化了半双工通信应用的收发器控制。MAX14830可通过SPI触发同步启动独立的UART传输。板载定时器允许设置发送器之间的延迟以及GPIO产生的时钟。
128字FIFO具有高级FIFO控制功能,可减少主处理器的数据流管理。
MAX14830采用48引脚TQFN (7mm x 7mm)封装,工作在-40°C至+85°C扩展级温度范围。
MAX14830关键特性
SPI时钟速率高达26MHz
增强快速模式(Fm+) I²C接口,数据速率高达1MHz
每路UART提供128字接收和发送FIFO
16倍速采样模式下,数据速率高达6MBd (最大值)
2倍速/4倍速模式下,数据速率高达12/24MBd (最大值)
外部晶体或时钟功能
分数波特率发生器、预分频器和锁相环(PLL)
发送器通过SPI命令同步
4个定时器连接至GPIO
通过/RTS_和/CTS_输出、输入实现自动硬件流控制
自动软件流控制(XON/XOFF)
收发器自动方向控制
可编程建立和保持时间,用于收发器控制
自动发送器禁止
半双工回波抑制
特殊字符检测
9位多点模式地址检测和过滤
SIR和MIR兼容IrDA®编码器/解码器
16个灵活的GPIO,具有20mA电流驱动能力
+2.35V至+3.6V供电范围
控制器和收发器接口逻辑电平转换可低至1.61V
小尺寸TQFN (7mm x 7mm)封装
USB转串口(UART)一分四
接下来即将请出的这颗芯片来自大名鼎鼎的FTDI Chip。可能读者会问,为什么说FTDI Chip大名鼎鼎?因为几乎市面上所有的USB转串口芯片都来自FTDI Chip,如果你没用过USB转串口,那就当我没说。
FT4232H是FTDI的第五代USB设备,采用USB2.0接口,可以实现四个串口(UART)。相比于SPI接口,USB转串口的驱动程序开发工作量应该更小一些,所以如果系统允许的话,最好采用这颗芯片。
FT4232H-EVBFT4232H主要特征
单芯片实现USB协议,不需要额外的固件
USB2.0接口,向下兼容USB1.0
独立的波特率发生器
RS232/RS422/RS485UART数据传输速率可达12Mbaud
配合74HC595,可以增加TX/RX状态指示灯
接收缓冲超时可设置
内部集成1.8V LDO
支持X-On/X-Off
支持7/8位数据模式,1/2停止位模式与Odd/Even/Mark/Space/No Parity
可外置EEPROM
IO驱动能力可编程(4,8,12或16mA)
双串口芯片CH432
CH432 是双UART 芯片,包含两个兼容16C550 的异步串口,支持半双工收发自动切换和IrDA 红外编解码,支持最高4Mbps 的通讯波特率,可以用于单片机/嵌入式系统的RS232 串口扩展、带自动硬件速率控制的高速串口、RS485 通讯、IrDA 通讯等。
● 完全独立的两个异步串口,兼容16C450、16C550 及16C552 并且有所增强。
● 支持5、6、7 或者8 个数据位以及1 或者2 个停止位。
● 支持奇、偶、无校验、空白0、标志1 等校验方式。
● 可编程通讯波特率,支持115200bps 以及最高达4Mbps 的通讯波特率。
● 内置16 字节的FIFO 先进先出缓冲器,支持4 个FIFO 触发级。
● 支持MODEM调制解调器信号CTS、DSR、RI、DCD、DTR、RTS,可由75232芯片转成RS232电平。
● 支持硬件流控制信号CTS 和RTS 自动握手和自动传输速率控制,兼容TL16C550C。
● 支持串口帧错误检测、支持Break 线路间隔检测。
● 支持全双工和半双工串口通讯,提供RTS 串口发送状态信号支持RS485 收发自动切换。
● 内置SIR 红外线编解码器,支持2400bps 到115200bps 波特率的IrDA 红外通讯。
● 内置时钟振荡器,支持频率范围0.9216MHz~32MHz 的晶体,默认使用22.1184MHz 晶体。
● 可选两种单片机接口:10MB 速度的8 位被动并行接口和3MB/24MHz 速度的SPI 串行接口。
● 并行接口包含8 位数据总线,4 位地址,3 线控制:片选输入、写选通以及可选的读选通。
● SPI 串行接口包含SPI 片选、串行时钟、串行输入和输出,并且SPI 输出与输入可以并联。
● 中断输出引脚是可选连接,低电平有效,可以通过查询寄存器中的中断标志位代替。
● 支持5V 或者3.3V 电源电压,支持串口低功耗睡眠模式。
● 提供QFP-44 和SSOP-20 两种无铅封装,兼容RoHS。
一片4052解决的问题,怎么搞这么复杂? CH438 是八UART 芯片,包含八个兼容16C550 或者16C750 的异步串口 一片STM32搞定,省事省心 八个UART,这个牛nb。 本帖最后由 ljt80158015 于 2018-3-5 09:14 编辑
MyAVR 发表于 2018-3-4 23:35
八个UART,这个牛nb。
这款芯片有公司批量应用的,效果不错
ourdemo 发表于 2018-3-4 23:33
一片STM32搞定,省事省心
这个是用于arm+linux扩展usart的
WK2166,好像是国产的,之前用过,可以扩展4个出来,支持485收发 uart 扩展 收藏备用 感谢楼主,收藏下来以后用 感谢,存着,备用 ljt80158015 发表于 2018-3-5 09:14
这个是用于arm+linux扩展usart的
驱动谁做呢 ericdai 发表于 2018-3-5 19:51
驱动谁做呢
驱动可以移植
ljt80158015 发表于 2018-3-5 20:10
驱动可以移植
从哪里移植啊,您搞过吗 ljt80158015 发表于 2018-3-5 09:05
这款芯片有公司批量应用的,效果不错
这个RS485不能方向自动控制吧? zchong 发表于 2018-3-6 07:44
这个RS485不能方向自动控制吧?
貌似不能,要求不高可以用tx控制
串口扩展,mark一把。 学习了,串口拓展 楼主,这个片子价格如何? 推荐使用FPGA,随便玩,多少路都没有问题,还可以是全部并行接收… leiyitan 发表于 2018-3-9 22:32
推荐使用FPGA,随便玩,多少路都没有问题,还可以是全部并行接收…
这个难度就大了,成本也大了
就玩串口而言,不说芯片价格的选型都是撤蛋蛋,,,{:titter:} 标记下,以后可能会用到! 串口扩展,MARK一下,谢谢 zchong 发表于 2018-3-6 07:44
这个RS485不能方向自动控制吧?
试试用我这个芯片来扩展串口,可以自动分包、解包、校验,还能避免总线数据冲突:
大家觉得 CDBUS 这个带仲裁的 RS485 怎么样?跟 CAN 比呢?
https://www.amobbs.com/thread-5693201-1-1.html
(出处: amoBBS 阿莫电子论坛)
USB转串口芯片很多的,比较常用的USB转串口芯片有CH340、CP2102、PL2303、FT232等。推荐CH340和CP2102,便宜质量还行。 用过MAX14830,价格不菲,而且对于波特率的误差宽容度小,这也没有错,按照误差范围来判断,但是实际应用中可能会引起麻烦。
遇到一个误差正好在边界单片机通信,收到有误码,但是用PC机接收正确。后来用示波器量了,确实是单片机的波特率误差偏大。
这不是说MAX14830有问题,反而它是正确的,但是现场判断太严格就比较麻烦,不能每个现场都用示波器去测吧,还得沟通解释。
我觉得通信都应该宽进严出。 好贴,收藏一下! 标记收藏了 谢谢分享 本帖最后由 Embedtech 于 2019-8-30 22:53 编辑
我貌似在哪看过这帖子 串口扩展
页:
[1]