ADS1018: SPI多设备总线设计和驱动能力评估

Part Number: ADS1018
Other Parts Discussed in Thread: ADS1118

Hi 您好。

背景:MCU的SPI总线带有9个从设备,负载分别是:1个ADS1018、2个A元件、6个B元件,其中ADS1018的SPI速率是200kbps, A元件SPI速率是1Mbps,C元件SPI速率是100kbps。SPI波形有振铃,ADS1018和A元件的SPI通信有时候会报错。

请求支持:是否可提供SPI多设备总线设计资料,用于评估MCU是否可驱动多个SPI从设备,SPI从设备数量是否合理,从设备的容性负载是否合理等?

谢谢。

  • 您好,

    已经收到了您的案例,调查需要些时间,感谢您的耐心等待

  • 你好,

    谢谢你的问题。具有9个从设备的SPI总线是一个非常繁忙的总线,SPI波形振铃和通信错误最有可能是SPI总线上过载的症状。每个额外的从设备增加一个容性负载,每个走线也会增加更多的容性负载。

    以下是您的系统的一些潜在选项:

    1. 在SPI线上添加22-47Ω系列电阻,就在MCU输出引脚处。这提供了阻尼和显着减少振铃。

    2. 添加缓冲ic来中断SPI通信。在一个缓冲器上可以是ADS1118和2x A组件,第二个可以是6x B组件。这种方法隔离了负载,并提供了更强的驱动能力。

    3. 如果您的MCU有能力,请使用多个SPI外设。这提供了使用一个外设驱动更高速度组件A和ADS1118的选项,同时在额外的外设上驱动6x组件B。

    你能分享一个通讯线路振铃的范围输出吗?

    你能分享一下沟通失败的范围吗?

    你能分享系统的部分或全部示意图吗?

    你能共享元件A和元件B的数字引脚输入电容规格吗?

    你的MCU的输出驱动能力是什么?你用的是什么MCU ?

  • 首先感谢您的支持和回复。

    1. 在SPI线上添加22-47Ω系列电阻,就在MCU输出引脚处。这提供了阻尼和显着减少振铃。

    ---已添加

    2. 添加缓冲ic来中断SPI通信。在一个缓冲器上可以是ADS1118和2x A组件,第二个可以是6x B组件。这种方法隔离了负载,并提供了更强的驱动能力。

    ---已添加缓冲器可以解决该问题,那怎么判断这个缓冲器可带载的SPI从设备的数量以及从设备的SPI速率?

    3. 如果您的MCU有能力,请使用多个SPI外设。这提供了使用一个外设驱动更高速度组件A和ADS1118的选项,同时在额外的外设上驱动6x组件B。

    ---嗯,这是其中的一种方案。我的需求:请问是否有相关文档或资料,这样可在原理图设计时通过理论计算或分析来判断SPI可带载的从设备的数量以及速率等,避免SPI通信失败的风险

    你能分享一个通讯线路振铃的范围输出吗?

    ---A元件(ST的L9945)的Clk,SDI,SDO管脚上的振铃波形如下

    你能分享一下沟通失败的范围吗?

    ---请问沟通失败的范围指的是?

    你能分享系统的部分或全部示意图吗?

    ---SPI拓扑如下:

    你能共享元件A和元件B的数字引脚输入电容规格吗?

    ---A元件:ST的L9945,10pF

    B元件:ST的L9502,30-50pF

    你的MCU的输出驱动能力是什么?你用的是什么MCU ?

    ---英飞凌的TC399,驱动能力是8mA