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.

[参考译文] ADS1220:数据读取问题

Guru**** 2394305 points
Other Parts Discussed in Thread: ADS1220

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/588615/ads1220-data-reading-issue

部件号:ADS1220

尊敬的各位:

我正在使用ATMEGA16A从ADS1220获取数据。 我使用的是控制器的SPI协议,相同的协议连接到ADS1220的SPI接口。 我可以修改/读取ADS1220的配置寄存器的内容,但如果我发送一次性转换命令,它不会发送任何内容。 我的IC未损坏bcz我可以访问和更改配置寄存器的内容。

请告诉我我是否做错了。  

我的代码:

SPDR=0x08;//开始转换
while (!(0x80和SPSR));
while ((0x01&Pina)=0x01);//等待DDRY变低
SPDR=0xFF;
while (!(0x80和SPSR));
a=SPDR;//读取第一个字符
SPDR=0xFF;
while (!(0x80和SPSR));
B=SPDR;//读取第一个字符
while (!(UCSRA和(1<UDRE)));
UDR=A;
while (!(UCSRA和(1<UDRE)));
UDR=b;

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

    您好,Shrihari,

    这是您第二次询问基本相同的问题,唯一的更改是使用的代码部分稍有不同。  我将提出与我先前的答复相同的建议。  通常,发现可能发生(或未发生)的情况的最佳方式是使用示波器或逻辑分析仪监控SPI通信和DRDY。  确保您的SPI处于模式1,CS在整个通信事务中保持低电平。  如果可能,请向我发送一些通信的屏幕截图,我可以帮助您验证。

    我不知道政务司司长的情况。  在您尝试读取数据的整个过程中,CS必须处于低位。  代码显示您正在正确启动start命令,但是否确定DRDY轮询工作正常?  该代码还会启动数据的前两个字节的通信,但不会启动第三个字节的通信。  您的输入电压是多少,您期望返回什么值。  如果 输入为零或浮动,并且只读取数据的前两个字节,则数据可能显示为零。

    此致,

    Bob B  

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

    抱歉,第二次发布相同的查询。 我看不到我的第一个职位,这就是我排名第二的原因。 现在我可以看到两者

    感谢您的建议。 我在模式0中使用SPI,这就是为什么我没有得到任何读数。 现在我将其配置为模式1。 之后,我可以读取ADS1220中的所有三个字节,但问题是,我获得的读数与已知输入的预期不同。

    我正在使用内部参考2.048 volt和我的AVDD=5 v,Avss=GND,并且我正在将0.01 volt应用于ADS1220的通道零,并且我只能读取三个字节中的第三字节(LSB),其他两个字节始终为零。 同时,我尝试改变输入,但只改变LSB字节,变化太大。 我已将CS永久地固定在地面上。

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

    您好,Shrihari,

    很高兴听到您取得了进步。  您能否提供您所使用的确切配置设置?  另外,您是否可以向我发送您所看到的几种不同输入电压的输入电压的输出代码?

    谢谢!

    Bob B