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.

[参考译文] ADS1231:在 ADS1231的 DOUT 引脚中未接收到数据

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1252245/ads1231-no-data-received-in-dout-pin-of-ads1231

器件型号:ADS1231

电路说明- MCU_ADC_DOUT、MCU_ADC_SCLK 连接到 MCU 端、ADC_DOUT、ADC_SCLK 连接到 ADS1231端。

问题1 -我没有在 DOUT 引脚中获取数据值。 最初我已将 MCU_ADC_DOUT 引脚配置为 GPIO 引脚来读取数据。 当 MCU_ADC_DOUT 引脚变为低电平(数据就绪)时、我将此引脚重新配置为 SPI MISO 引脚、以读取转换后的数据。 MCU_ADC_DOUT 引脚没有变为低电平。 我已将一个称重传感器连接到 ADS1231。

怀疑2 - MCU_ADC_SCLK 引脚在最初是否有必要为低电平、以便 MCU_ADC_DOUT 变为低电平。

问题3 -请检查并验证原理图。

谢谢你。

此致、

内尔·马达夫

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

    您好 Neel:

    原理图看起来是正确的。  请确认 SPEED 引脚被驱动为高电平或低电平、并且 PWDN 被驱动为高电平。  如果这些引脚悬空、则 ADC 可能没有响应。

    此外、SCLK 需要闲置为低电平。  如果 SCLK 为高电平的时间超过 t STANDBY (12.5ms、速度=1或100ms、速度=0)、则器件将进入待机模式并且不会响应。

    请使用示波器或逻辑分析仪在 SCLK 和 nDRDY/DOUT 引脚上捕获数据、以验证时序和 SCLK 正常运行。  如果您发布的屏幕截图类似于数据表中的图20、我将回顾一下。

    此致、
    N·基思
    精密 ADC 应用

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

    Keith、您好、

    SPEED 引脚为高电平

    PWDN 引脚为高电平

    SCLK 引脚被驱动为低电平。 由于外部上拉而复位时、SCLK 为高电平。 在初始化期间、SCLK 被驱动为低电平。

    SCLK 和 DOUT 引脚的屏幕截图如下所示。  

    信号1 (黄色)- DOUT

    信号2 (蓝色)- SCLK

     

    初始化的代码片段-  

    PDWN 初始化-  

    porta.ODR1.byte |= 0x00;
    porta.pmr.byte |= 0x00;
    Porta.pdr.bit.b7 = 1;  
    Porta.PODR.bit.b7 = 1;  

    速度初始化-

    Porta.ODR0.byte |= 0x00;  
    porta.ODR1.byte |= 0x00;  
    porta.pmr.byte |= 0x00;
    Porta.pdr.bit.b6 = 1;
    PORTA.PODR.BIT.B6 = 1;  

    DOUT 初始化-  

    PORT9.PMR.bit.b2 = 0;  
    PORT9.PDR.bit.b2 = 0;
    PORT9.DSCR.bit.b2 = 0;

    SCLK 初始化-  

    PORT9.PODR.bit.b1 = 0u;
    PORT9.PMR.bit.b1 = 0u;
    PORT9.PDR.bit.b1 = 1U;
    PORT9.PODR.bit.b1 = 0u;

    应用层-  

    PortConfiguration ();
    while (1){
     if (PORT9.PIDR.bit.b2 == 0){  

    //切换到 SPI}

    请检查并验证。 问题仍然是" SCLK 驱动为低电平后 DOUT 引脚不会变为低电平"

    谢谢你。

    此致、

    内尔·马达夫

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

    您好 Neel:

    回头再看原理图、我建议您将 CLKIN 引脚上的电阻器 R102从47k 更改为0Ohm。  该引脚具有自动检测功能、如果该引脚上有噪声、将关断内部振荡器。

    此外、在电源稳定并在您强制 SCLK 为低电平之后、我建议您通过将 nPDWN 引脚拉低至少26us 来复位 ADS1231。  nPDWN 返回高电平后、DOUT 引脚应在约53ms 后从高电平转换为低电平、指示已准备好读取第一个转换结果。

    此致、
    基思