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.

[参考译文] ADS8201:读取和写入问题。

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1255407/ads8201-read-and-write-issue

器件型号:ADS8201

大家好!
现在、我使用 ADS8021通过 SPI 通信读取 ADC 值。

针对 Configuration Ic 执行以下步骤。

  1. 将0x00写入寄存器0x08 > ADS8201_SetAdcTriggerScr (ADC_idel);
  2. 将0x00写入寄存器0x04 > ADS8201_ChannelSelection (channer_0);
  3. 将0x00写入寄存器0x05 > ADS8201_SetAdcScr (NO_AVERAGE、EDGE_Trigged    、ACTIVE_LOW、INT、FIFO_buff_ENABLED  convert_start_through_SPI);
  4. 将0x02写入寄存器0x06 > ADS8201_SetInterruptScr (disable_interrupt、enable_interrupt   、disable_interrupt、disable_interrupt、disable_interrupt );
  5. 将0x05写入寄存器0x08 > ADS8201_SetAdcTriggerScr (AUTO_TRIGGER_AUTO_CHANNEL_UPDATE_SINGLE_SCAN);
  6. 写入0x00以读取 ADC > ADS8201_SpiRead (Add、 &data、 sizeof (uint8_t));
    我在 MISO 引脚上没有获取任何数据。

SPI 模式被设定为1 (CPOL = 0、CPHA = 1)。

循环 PFA


任何人都知道读取 ADC 值的顺序(配置+读取)

谢谢、此致。

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

    尊敬的 Vrushal:

    您的 SCLK 的计时是多少?  我无法在您捕获的屏幕截图中看到您的时基是什么。  发送数据包之间/CS 的高电平时间是多少?  为什么8位数据包之间的时间很短?  您能否在 LA 采集中包含 BUSY 信号?

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

    您好、Tom、

    感谢 Replay。

    时钟频率为1 MHz。  

      发送数据包之间/CS 的高电平时间 5.167 微秒
    SPI 配置 由控制  发送的每帧8位
    PFA 供您参考。  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能否添加 CONVST 和 BUSY 信号?  您是否还可以尝试读回寄存器详细信息、以确认是否正确接收到您的通信?  我不明白您是在何处设置 MSB 来指示寄存器写入操作:

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

    您好,Tom

    您好、Tom、

    我执行以下步骤进行配置。

    写入0xA000、以  在 ADC 触发器 SCR 寄存器中选择 ADEL 模式。
     通道0 选择写入0x9000。
      NO_AVERAGE、EDGE_Triggered、ACTIVE_LOW、INT、FIFO_BUFF_ENABLED 写入0x9413  在 ADC SCR 寄存器中转换_start_through_SPI。
    写入0x9802、以  在中断 SCR 寄存器中启用内部以使扫描数据就绪。
    写入0xA006、用于在 ADC 触发 SCR 寄存器中执行自动触发自动通道更新多次扫描。

    读取 ADC 数据后、我没有获得正确的值。  另外、请勿 在以下序列读取中更新通道编号。 每个读取序列数据都是相同的。  0xB86050
    如何从通道0获取 ADC 数据?
    谢谢、此致。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能包含 CONVST 和 BUSY 吗?