This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] ADS1282:多路复用器通道开关

Guru**** 2391245 points
Other Parts Discussed in Thread: ADS1282

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/742088/ads1282-mux-channel-switching

器件型号:ADS1282

您好!  

我知道这个问题以前已经被问及并得到了解答。 但我找不到这个线索-所以我提前道歉。  

我的应用需要 ADS1282上的两个输入通道、我们的计划是/是对多路复用器进行重新编程、以便我们可以逐个对信号进行采样。  

一般想法是:

更改配置1 MUX,发出读取数据等待数据就绪,读取数据

将配置1多路复用器更改为通道2、发出读取数据命令、等待数据就绪、数据就绪

将配置1多路复用器从通道1更改为通道2不起作用。 只要我作为配置的一部分进行切换、我就可以切换通道。  

通道的切换速度有多快? 所有数据访问都是作为中断服务例程的一部分进行的、我的计划是连续发出命令。 这在该芯片上是可行的吗?

在读取寄存器时、我在字节之间输入大约4us 的延迟、这似乎可以正常工作。 ADC 的时钟频率为4MHz、SPI 的运行频率为2MHz。 目标数据速率为2KHz。  

如果有任何帮助/指导、我将不胜感激。

谢谢

桑托什

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Santosh、

    很抱歉耽误你的回答。

    FIR 滤波器的稳定时间为~63个转换周期、而 SINC5滤波器的稳定时间为~5个转换周期。 因此、当两个通道之间进行多路复用时、多路复用时的有效数据速率需要除以5或63、具体取决于您所处的滤波器模式。

    由于微米控制器的 SPI 外设中存在其他数字延迟、4us 延迟可能是可以的、但 ADS1282数据表建议在连续命令字节之间使用24/fCLK、有效期约为5.86us、因此我建议稍微增加延迟、以确保安全。

    以下 E2E 主题可能会为您提供一些相关信息:
    e2e.ti.com/.../1952215
    e2e.ti.com/.../2510610

    此致、
    Chris
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Chris、

    感谢您的回答。 感谢这些链接、这些都是我要寻找的链接-我需要实施与 Mahesh 为他的用户描述的完全相同的方案。 我还有几个问题-
    a)您提到的16kSPS 数据将在408uS 内准备就绪-我们配置的16kSPS 器件是否假设时钟为4.096MHz、数据是否应在63uS 内准备就绪? 我缺少什么?
    b)当我尝试切换通道-写入配置1寄存器、然后发出 RDATA -芯片似乎已死区-即不再有 DRDY 变为低电平。 不确定我的行为是什么。 但是、如果我在启动时发布配置1寄存器更新、则寄存器更新似乎保持不变。

    如果我将芯片置于 RDATAC 模式、我是否可以在 DRDY 之间切换通道?
    这条线程是很棒的橡皮擦,在人们认为这里是答案的地方停下来:)。

    另一个问题是-我是否应该添加另一个 ADS1282来处理第二个通道而不是多路复用。

    谢谢
    桑托什
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Santosh、

    [引用 user="santosh balakrishnan37"]a)您提到的16kSPS 数据将在408uS 内准备就绪-我们配置的16kSPS 器件是否可以假定时钟为4.096MHz、数据是否不能在63uS 内准备就绪? 我缺少什么?

    当持续转换时、您将看到每63us 新数据的标称数据速率;然而、由于 SINC5滤波器平均最近五个结果、第一个转换结果将延迟大约五个转换周期、 但是、当首次启动新的转换(以及切换通道时)时、它没有关闭的历史记录、因此 ADC 在/DRDY 变为低电平之前内部收集五个转换、以指示您具有"稳定"的转换结果。 对于 FIR 滤波器、由于 FIR 滤波器的滤波器抽头很多、第一个稳定结果的转换周期更接近62或63。

    [引用 user="santosh balakrishnan37"]b)当我尝试切换通道-写入配置1寄存器、然后发出 RDATA -芯片似乎已死区-即不再有 DRDY 变为低电平。 不确定我的行为是什么。 但是、如果我在启动时发布配置1寄存器更新、则寄存器更新似乎保持不变。 [/报价]

    您是否正在等待/DRDY 在读取数据之前变为低电平? 此外、您是否在尝试写入器件寄存器之前将 hte 器件置于 SDATAC 模式?

    请记住、写入寄存器会导致当前转换重新启动(即数字滤波器的转换结果历史记录已重置)、因此您必须等待数字滤波器再次稳定。 此外、我相信当您处于 RDATAC 模式时、寄存器写入会被忽略、因此请尝试在尝试写入寄存器之前发出 SDATAC 命令。

    [引用 user="santosh balakrishnan37"]其他问题是-我是否应该添加另一 个 ADS1282 来处理第二个通道而不是多路复用。[/引用]

    如果您需要同时测量两个通道、当然可以。 否则、如果您能够承受两个通道之间的多路复用、则必须确定数字滤波器设置时间是否过长、以便能够根据需要快速对两个通道进行采样。

    此致、
    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Chris、

    非常感谢您的详细回答。
    >>您是否正在等待/DRDY 在读取数据之前变为低电平? 此外,您是否在尝试向设备寄存器写入>>之前将设备置于 SDATAC 模式?
    我在启动时执行 SDATAC、并在 DRDY 变为低电平时触发读取。 I 跟随序列是发出 RDATA、在 DRDY 从高电平到低电平上中断、在 SPI 上读取数据。 但是、如果我更新配置1、DRDY 在 RDATA 上之后不会变为低电平、并且我不读取数据。 我尝试在 WREG 和 RDATA 之间插入延迟、但这似乎没有帮助。

    谢谢
    桑托什
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Santosh、

    将 WREG 命令用于 CONFIG1寄存器的命令序列是什么?

    是否可以在 WREG 命令中将"nnnnn"位设置为非零值? 在这种情况下、ADC 会将 RDATA 命令解释为要写入 HPF0寄存器的下一个数据字节。 我猜 ADS1282可能会等待您完成 WREG 命令(认为您正在写入多个电容器)、然后才开始下一次转换。

    此致、
    Chris
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Chris、

    这是我发送到切换通道的命令序列
    0x42 - 0x40 |寄存器02
    0x00 -要写入的寄存器数量- 1.
    0x18 -选择多路复用器01
    0x12 - RDATA 命令。

    在发出 RDATA 后、我期望 DRDY 在转换时间后变为低电平。 但 ADS 却保持沉默。

    谢谢
    桑托什