ADS1261: spi通信问题

Part Number: ADS1261

请问一下,这些都是通信所必须的吗?我直接发送原本address可以吗?然后CRC校验是必须要的吗?

734b183c-a3a7-4431-8f3c-8ccc69643dfc.jpeg

  • 您好,

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

  • 您好,

    必须使用 OPCODE。您不能直接发送地址来读写寄存器.

    根据数据手册第 56-57 页,ADS1261 的寄存器访问必须遵循命令格式:

    • 读寄存器命令 (RREG)20h + 寄存器地址
      • 例如:读地址 02h 的寄存器 → 发送 22h
    • 写寄存器命令 (WREG)40h + 寄存器地址
      • 例如:写地址 02h 的寄存器 → 发送 42h

    CRC 校验是否必须?

    不是必须的,CRC 是可选功能

    根据数据手册第 52 页:

    • CRC 是可选的错误检查代码
    • 通过 MODE3 寄存器的 CRCENB 位启用或禁用
    • 默认是禁用状态.
  • 你好,我表达的有问题,我就是这样发送的数据,但是却没有正确的数据回传给我。我想先在0x02寄存器写入0x55,然后再将0x55读取出来,发送0x22之后,却没有回传给我。我将我的spi的时钟极性和时钟相位都改变了,但是都没有用。这是什么问题呢。

  • 您好,

    给您一些排查建议。

    1. 确认 SPI Mode 1 (CPOL=0, CPHA=1)
    2. 将写操作和读操作分成两个独立的 CS 周期
    3. 芯片未正确初始化/复位,请参考示例代码, 尝试读取 ID 寄存器 (0x00) 验证基本通信。code
  •   cs是单独分开的,这是我发送了读取0x00的指令,没有返回任何数据,我的SPI传输速率是8M,跟这个有关系吗?

  • 您好,

    基于您的回复,问题很可能是在硬件层。

    建议排查下硬件,下方排查建议供您参考。

    排查项 检查方法
    DVDD 是否真正供电到芯片引脚(不是电源模块输出,而是芯片引脚本身的电压) 万用表直接测芯片 DVDD 引脚
    RESET 引脚是否一直被拉低 万用表测 RESET 引脚,空闲时应为高电平
    MISO (DOUT/DRDY) 引脚是否真的连接到 MCU 的 MISO 检查硬件连线,或用示波器看 MISO 在 CS 低时是否有任何电平变化
    CS 是否真的拉低到位(电平是否够低,是否有轻微电压残留) 用示波器/万用表验证 CS 低电平电压是否 < VIL
    PCB 上是否有虚焊/断路 检查 DOUT/DRDY 引脚焊接情况