全部:
在上一个帖子中、我进行了详细的初始化。 但是、我可以执行以下操作:
从 A_SYS_CFG 开始使用 WREGS (5)-写入 A_SYS_CFG、D_SYS_CFG、CLK1、CLK2、ADC_ENA
然后从 A_SYS_CFG 开始执行 RREGS (5)、以验证寄存器的内容。
然后发送唤醒以开始转换。
使用从 ADC1开始的 RREGS (4)来读取 ADC 寄存器的内容。
此致、
Todd Anderson
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.
全部:
在上一个帖子中、我进行了详细的初始化。 但是、我可以执行以下操作:
从 A_SYS_CFG 开始使用 WREGS (5)-写入 A_SYS_CFG、D_SYS_CFG、CLK1、CLK2、ADC_ENA
然后从 A_SYS_CFG 开始执行 RREGS (5)、以验证寄存器的内容。
然后发送唤醒以开始转换。
使用从 ADC1开始的 RREGS (4)来读取 ADC 寄存器的内容。
此致、
Todd Anderson
这是从安全角度来看的。 我们需要随着时间的推移验证寄存器的内容不会因外部噪声突发而发生变化。 这种情况不太可能发生、但其目的是在不读取 ADC 时验证寄存器内容。
听起来、ADS131a04需要设置为待机、然后读取"设置寄存器"、然后使用 WAKEUP 返回正常模式。
请告诉我、我的推理是否不符合基准。
顺便说一下、我可以做5个寄存器的 WREGS 吗? 似乎我可以、但数据表中的所有示例都使用4 (主要针对 RREGS)。
您好 Todd、
仍然可以使用 WREGS 命令写入奇数的寄存器。 图78试图说明器件仅转换每个命令字的前16位。 因此、即使寄存器只有8位宽、无论器件字长度设置如何、命令字之后的每个字一次只能容纳两个寄存器的数据。
只要您指定要写入的寄存器数量减1、器件就应该在 ADC_ENA 寄存器的数据字之后停止读取命令、而不应该尝试将0x00写入保留寄存器。
此致、
Ryan
好的、我感到困惑。
设置 ADS 并发出 WAKEUP 信号后、使用 RREGS 命令从器件读取 ADC 数据、对吧?
序列是 Command、Zero、Zero、Zero、Zero、 CRC (或零)-我一直使用 RREGS 和 ADC1作为参数、但您说可以发送任何命令吗? 我是否在 Command 中发送了错误的值?
我一直在发送 x3103 (RREGS - 4寄存器、从 ADC1开始)-器件在 Command 中的预期值是多少?
您好 Todd、
转换数据不包含在任何用户可编程寄存器地址中。 数据直接通过专用输出移位寄存器移出、该寄存器在您看到/DRDY 下降沿之前加载新数据。 您不必发送 RREGS 命令即可读取转换数据。
在每个帧中一次只读取两个寄存器。 发送命令0x3103将在下一帧的状态字(发送命令后的帧)中输出地址11h 和12h 的内容、地址13h 和14h 的内容可以在之后的帧的状态字中读取。 帧的其余部分仍可用于读取转换数据、这意味着您不会以这种方式错过任何样本。 图76显示了从地址00h 开始读取4个寄存器的示例。
此致、
Ryan