搜索
bottom↓
回复: 31

MCU的一个SPI连接24个SPI从机,实现一主24从,是否可行。

[复制链接]

出0入0汤圆

发表于 2019-7-9 16:13:48 | 显示全部楼层 |阅读模式
片选用24个IO,MOSI,MISO,CLK信号是否需要加驱动IC,第一次这样用,心里没底。

出40入45汤圆

发表于 2019-7-9 16:27:41 | 显示全部楼层
没有被片选上的从机,那4根引脚应该是高阻态吧?

出0入4汤圆

发表于 2019-7-9 16:34:54 | 显示全部楼层
这24个从机是不是在同一个板子上? 距离远不远 ?    有条件的话还是加上驱动ic

出0入0汤圆

 楼主| 发表于 2019-7-9 16:55:10 | 显示全部楼层
在同一个板子上

出10入120汤圆

发表于 2019-7-9 17:30:08 | 显示全部楼层
要加驱动,标准门扇出系数不够的。

出90入0汤圆

发表于 2019-7-9 17:31:46 | 显示全部楼层
我去,这么狠,我感觉可能要跪,我以前有一次SPI中间线长了点,有50cm左右,总是不稳定,搞了好久才搞好

出0入59汤圆

发表于 2019-7-9 17:35:54 | 显示全部楼层
输出好加驱动,放片245就好了;

输入缓冲就麻烦了, 难道每路加片 HC06  开漏输出的?

出0入362汤圆

发表于 2019-7-9 23:30:19 | 显示全部楼层
这也太折腾了。。。用模拟开关之类吧,或者用CPLD搭一个?

对了有个CH446X,5*24的开关阵列,也许适合你。http://www.wch.cn/products/CH446.html

出0入0汤圆

发表于 2019-7-10 06:20:04 来自手机 | 显示全部楼层
根据手册参数,看看SpI输出驱动能力,而且应该能算出来24个并联的阻抗

出0入0汤圆

发表于 2019-7-10 07:28:56 来自手机 | 显示全部楼层
上cpld吧

出0入0汤圆

发表于 2019-7-10 07:33:55 来自手机 | 显示全部楼层
可行的,试过接80个从机

出0入0汤圆

发表于 2019-7-10 07:45:50 | 显示全部楼层
我感觉要加驱动芯片了,我最多板内带过5个从机,记得当时没啥特殊处理。

出0入0汤圆

发表于 2019-7-10 08:55:17 | 显示全部楼层
本帖最后由 sunjianmax232 于 2019-7-10 08:56 编辑

需要加SPI驱动芯片,我们做过8路的,要加。另外建议每个从机加个SPI隔离芯片,防止某个从机死机一直拉着SPI线,导致整个系统没法通讯。
片选不一定要24要IO,也可以用个多路的译码器一类的。

出0入4汤圆

发表于 2019-7-10 09:00:37 | 显示全部楼层
MOSI,SCLK加245,misO加125.

出0入0汤圆

 楼主| 发表于 2019-7-10 09:10:04 | 显示全部楼层
Xujuango 发表于 2019-7-10 09:00
MOSI,SCLK加245,misO加125.

这个可以

出0入0汤圆

发表于 2019-7-10 09:19:13 | 显示全部楼层
一定要确认从机在片选未选中时SCK和MISO线是否是高阻态。有的IC是低电平,会霸占总线,以前中过招,后来加了74xx245才搞定。

出0入0汤圆

发表于 2019-7-10 09:57:29 | 显示全部楼层
驱动能力没问题,主要是输入电容的影响,如果速度不高的话也没问题

出0入0汤圆

发表于 2019-7-10 09:58:01 | 显示全部楼层
未片选输入高阻(典型的>100K),逻辑上驱动力够,这么多从机走线距离应该偏长,远端带匹配电阻降低反射。
改进的方式是,多路SPI分散从机数,如3路或2路,就稳妥多了。

出0入0汤圆

发表于 2019-7-10 12:39:39 来自手机 | 显示全部楼层
片选不用24个IO,反正不能同时用两个,5个IO输出到译码器就行了

出200入2554汤圆

发表于 2019-7-10 12:49:17 来自手机 | 显示全部楼层
我用5v的avr带过32个SPI从机,只要MISO能有高阻就行。因为是avr,所以没刻意去加驱动器,stm32建议加上

出0入0汤圆

发表于 2019-7-10 16:04:43 | 显示全部楼层
加驱动没啥问题 。

出0入59汤圆

发表于 2019-7-10 16:20:59 | 显示全部楼层
一片 cpld 应该是最好的选择

出0入0汤圆

 楼主| 发表于 2019-7-10 16:58:27 | 显示全部楼层
dykwai1 发表于 2019-7-10 16:20
一片 cpld 应该是最好的选择

是的,速度能快很多

出0入0汤圆

发表于 2019-7-10 21:58:47 | 显示全部楼层
很怀疑楼主在干什么

出0入0汤圆

发表于 2019-7-10 22:29:02 | 显示全部楼层
加上驱动芯片比较稳妥

出0入0汤圆

 楼主| 发表于 2019-7-11 10:39:49 | 显示全部楼层
yuguoliang 发表于 2019-7-10 21:58
很怀疑楼主在干什么

因为公司做BMS,我想做一个模拟24串锂电池的电源,每一串电压0-5v单独可调,用单片机控制24个SPI接口的DA,再用运放做一些调理电路。

出0入0汤圆

发表于 2019-7-11 13:15:08 | 显示全部楼层
jia_xuan 发表于 2019-7-11 10:39
因为公司做BMS,我想做一个模拟24串锂电池的电源,每一串电压0-5v单独可调,用单片机控制24个SPI接口的DA, ...

模拟电池,电源需要串联起来吧,为什么不用STM32的CAN与DA解决。
STM32的DA输出加一个功放,CAN通讯用光耦隔离,电源用DCDC隔离模块。

出0入0汤圆

 楼主| 发表于 2019-7-11 14:27:50 | 显示全部楼层
本帖最后由 jia_xuan 于 2019-7-11 14:29 编辑
yuguoliang 发表于 2019-7-11 13:15
模拟电池,电源需要串联起来吧,为什么不用STM32的CAN与DA解决。
STM32的DA输出加一个功放,CAN通讯用光 ...


是的,上述方案我提出后,通过这两天论证,发现一个问题:因为需要串联,这就要求当前模拟电源的GND是上一块的VCC,而且要和MCU隔离,电路比较复杂,放弃这个方案。正在考虑1+24个MCU通过CAN通讯,因为不量产,成本也就没太多要求。

出0入0汤圆

发表于 2021-2-5 16:22:11 | 显示全部楼层
simplorer 发表于 2019-7-10 07:45
我感觉要加驱动芯片了,我最多板内带过5个从机,记得当时没啥特殊处理。

速度能到多少

出0入0汤圆

发表于 2021-2-9 10:51:18 来自手机 | 显示全部楼层
CAN方案最合适

出0入0汤圆

发表于 2021-2-25 19:24:16 来自手机 | 显示全部楼层
485+modbus也可以考虑。

出0入0汤圆

发表于 2021-2-25 23:34:51 来自手机 | 显示全部楼层
模拟锂电池电芯电压,需要每串DA串起来,电流怎么模拟
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-20 05:58

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

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