请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:ADS1015-Q1 主题中讨论的其他器件:ADS1015
你好
我们尝试通过以下方式配置 ADC:
- 在初始化时、我们通过将 HI_THRESH 寄存器 MSB 设置为1并将 LO_THRESH 寄存器 MSB 设置为0来启用 ALERT /就绪中断。
- 我们为 HV_Pos 编写配置并等待 ALERT/Rdy 中断
- 在警报/延迟中断中、我们通过写入 Convert Pointer (0x00)来请求数据
- 等待写入命令完成(等待 I2C SEND_END 中断被触发)、然后读取数据
- 存储读取的数据并为下一个通道(HV_Neg)写入配置
此流程是否正确?
我们遇到的问题是、在第2步之后、如果我们不等待 I2C 驱动程序通过持续检查寄存器 IICBSY0是否发生变化来完成事务、那么我们不会接收中断。
如果我们在写入配置后等待该寄存器更改、则会触发中断、但步骤5将不起作用、因为 SW 将卡在检查 IICBSY0是否发生更改的循环中(在 I2C Receive_End 中断中检查该寄存器)。
您对此有什么想法吗?
谢谢
Martin