搜索
bottom↓
回复: 16

跑Linux系统的板扩展UART,用USB转还是SPI转呢?

[复制链接]

出130入129汤圆

发表于 2022-9-28 09:18:16 来自手机 | 显示全部楼层 |阅读模式
一些运行Linux的嵌入式板卡,系统自带有USB转串口驱动,扩展串口是挺方便的。

SPI之类转串口芯片,需要适配下驱动,一般也能找到现成的。

在跑系统,长期运行的情况下,这两种转换方式哪种会好一些?

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出100入143汤圆

发表于 2022-9-28 09:33:59 | 显示全部楼层
肯定spi稳定可靠

出0入0汤圆

发表于 2022-9-28 09:45:15 | 显示全部楼层
用spi转串口,nxp的sc16is752/762之类的

出0入0汤圆

发表于 2022-9-28 09:52:52 | 显示全部楼层
WCH的pcie转串口芯片,貌似最多28个串口,提供Linux驱动

出0入8汤圆

发表于 2022-9-28 09:57:43 | 显示全部楼层
如果追求稳定,任何usb设备都不要使用,任何

出0入33汤圆

发表于 2022-9-28 10:26:30 来自手机 | 显示全部楼层
千万别指望usb稳定

出130入129汤圆

 楼主| 发表于 2022-9-28 10:59:03 来自手机 | 显示全部楼层
要转出3-4路uart,还有1路can

出0入90汤圆

发表于 2022-9-28 11:08:46 | 显示全部楼层
用过FT4232,没出过问题
是直接在板上扩的,不是外接的

出130入129汤圆

 楼主| 发表于 2022-9-28 11:12:41 来自手机 | 显示全部楼层
aammoo 发表于 2022-9-28 11:08
用过FT4232,没出过问题
是直接在板上扩的,不是外接的

(引用自8楼)

我也是固定焊接在板上,不是拔插活动的

出50入255汤圆

发表于 2022-9-28 11:56:42 | 显示全部楼层
本帖最后由 xy-mcu 于 2022-9-28 12:39 编辑

从复杂度来看,USB比SPI复杂很多,自然稳定性也有差别很大,抗干扰能力也很大。
但对比FT232 系列和SPI ,也许足够稳定。但如果不是可插拔的方式,还是建议SPI ,遇到问题的时候,reset一下就解决问题。

我们目前用过好几款,不过都还在样品阶段。

用过:wk2204, xr20m1280

特别注意的地方:
本来想用xr20m1280 来实现8Mbps 通讯速率,结果最后调试出来,发现SPI 中断处理的延时竟然有200多us。
2次SPI操作之间也存在几十us,这导致有效的通讯速率只有500-800Kbps。

不知道是自己的问题,还是linux 系统本身的问题。

反之,用FT232 很容易实现8M  的USB 转串口通讯。但由于某些奇怪的需求,没有办法是用USB。



---修改了一下型号

出0入36汤圆

发表于 2022-9-30 16:46:03 来自手机 | 显示全部楼层
我用带10个串口的芯片

出130入129汤圆

 楼主| 发表于 2022-9-30 16:47:25 | 显示全部楼层
redworlf007 发表于 2022-9-30 16:46
我用带10个串口的芯片
(引用自11楼)

那么屌,什么处理器?

出0入36汤圆

发表于 2022-9-30 17:16:32 | 显示全部楼层
68336016 发表于 2022-9-30 16:47
那么屌,什么处理器?
(引用自12楼)

nuc980 nuc972  x2000h。。。。

出0入85汤圆

发表于 2022-9-30 17:50:10 来自手机 | 显示全部楼层
68336016 发表于 2022-9-28 10:59
要转出3-4路uart,还有1路can
(引用自7楼)

我之前的公司有类似需求,在Linux主控上外挂颗单片机实现的,Linux与单片机之间通过USB连接,使用的是CDC类,也就是USB串口。外扩的几路串口和CAN的数据是软件层面实现的(自定义通信协议)。
原理上可以让单片机在USB上模拟多个虚拟串口,但是CAN没用标准USB设备类。
对数据实时性要求不苛刻的情况下,这个方案可以用。
之前公司用这样的方案,主要还是为了省钱,因为缺芯片以前,产品里本来就需要颗单片机做些电源管理之类的活,把通信扩展也挂单片机上,可以省掉USB转串口或SPI转串口芯片的钱,电路也简单点,对Linux应用麻烦点,要专门写个模块来处理和分发/收集通信数据。

出0入0汤圆

发表于 2022-10-1 06:45:01 来自手机 | 显示全部楼层
xy-mcu 发表于 2022-9-28 11:56
从复杂度来看,USB比SPI复杂很多,自然稳定性也有差别很大,抗干扰能力也很大。
但对比FT232 系列和SPI , ...

(引用自10楼)

以前研究过Linux下spi,arm11,如果用驱动库,spi访问涉及从APP到驱动以及从驱动到APP的数据搬移,当时用io看延时,几百微秒(具体要查当时写的论文),同时也写了用mmap在APP中访问spi寄存器,同样用io观察,五微秒不到访问完成

出0入84汤圆

发表于 2022-10-1 12:28:26 | 显示全部楼层
用过FT4232,两片扩展8路485,还是相当稳定的

出130入129汤圆

 楼主| 发表于 2022-10-13 18:44:40 | 显示全部楼层
Huaan 发表于 2022-9-30 17:50
我之前的公司有类似需求,在Linux主控上外挂颗单片机实现的,Linux与单片机之间通过USB连接,使用的是CDC ...
(引用自14楼)

我那客户也想我用个STM32来实现SPI转几个UART和CAN。
这个单片机工作量不小,还得LINUX上的驱动。
本来原先就做个纯硬件板子,客户现在想增加单片机程序,但不想增加开发费用
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-25 13:19

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表