TI中文支持网
TI专业的中文技术问题搜集分享网站

ADS1110: 配置寄存器读出错误

Part Number:ADS1110

使用STM32F4系列的芯片驱动ADS1110做电压采样,配置寄存器设置为0x8C,但是读出的寄存器值时0XFF,但是数据寄存器读出的值很小,大概在500一下,麻烦大佬指导一下

Amy Luo:

您好,

您的I2C地址是什么?配置寄存器默认值是0x8C,您可以按照数据手册Figure 2. Timing Diagram for Reading From the ADS1110中的时序图再读一下,同时用示波器抓出I2C波形,附上来吗?我看下您的读取时序是否正确,配置寄存器返回的值是否正确

,

zhu lihua:

我使用的是ED1 ,那么地址就是0x92和0x93.时序我是直接使用了AT24C的驱动IIC时序,AT24C是可以正常使用的。至于波形我现在抓一下,然后附上来吧

,

zhu lihua:

图片怎么附上来??

,

Amy Luo:

因为论坛最近刚做了升级,应该可以直接把图片拖进来

另外,回复对会话框下方有“插入”菜单,可以插入图像/视频/文件

,

zhu lihua:

这是写时序

,

zhu lihua:

读时序第一部分

读时序第二部分

整个读时序

,

zhu lihua:

使用的电路图

,

Amy Luo:

您的读时序好像不对,看下面数据手册截图,整个读时序需要4*9=36个CLK,一共有4个ACK位,在第3个ACK位,没有给出低电平的应答位,这可能与CLK信号上存在很大的毛刺有关系,建议串接22欧姆或几十欧姆的电阻看是否改善。另外,您发出的总的CLK数好像是大于36。

,

zhu lihua:

感谢大佬,确实是在读数据后多了一个ACK。没有注意

,

zhu lihua:

现在还有一个问题是,我写入其他的配置寄存器都可以正确读出,但是我写入的如果是0x8C,读出来的就不对,实际读出0x0C。这样是正常的吗?

,

Amy Luo:

您是说仅ST/DRDY这一位不对吗?请注意,该位的读取值与写入该位的值无关。具体请查看数据手册11页Bit 7: ST/DRDY部分

,

zhu lihua:

好的    谢谢

赞(0)
未经允许不得转载:TI中文支持网 » ADS1110: 配置寄存器读出错误
分享到: 更多 (0)