您好!
这是一个后续问题:
https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1022706/ads124s08-trouble-reading-conversion-data-with-internal-or-external-reference?tisearch=e2e-sitesearch
自从发布前一个线程以来、我确定我的软件中有一个错误、阻止了基准控制寄存器被写入。 从那时起、我修复了此错误、但仍然无法读取有效的转换数据。 我使用内部基准差分输入运行 ADC (Ain2接地并设置为负输入、Ain9设置为正输入信号并连接到 ADC 的 GPIO 信号)。 我禁用了 PGA、禁用了内部基准缓冲器。
我将 ADC GPIO 配置为输出、并将其连接到 Ain9输入信号、然后在每次转换读数时切换。 虽然 我希望根据这个 GPIO 输入读取0V 和3.3V 转换数据、但是我持续 获得与我期望的结果不匹配的转换结果。 有时、我会得到看起来是正确的结果、但这可能只是巧合。 我使用2.5SPS 的最慢数据速率进行调试、并轮询 DRDY 引脚以获取读取时序。
以下是我的 COM 的一些屏幕截图:
初始化(所有初始化命令之间有3.7ms 的延迟):
- 重置命令
- 配置系统注册
- 启用发送状态
- 启用 CRC

- 配置输入多路复用器稳压器
- Ain2 =负输入
- Ain9 =正输入

- 配置参考寄存器
- 内部基准电压始终开启
- 使用内部2.5V 基准
- 禁用两个基准缓冲器

- 配置 GPIO 数据寄存器
- GPIO 1 =输出
- 设置 GPIO 1 =高电平

- 配置 GPIO 配置寄存器
- 将 Ain7设置为 GPIO (GPIO-1)

- 配置数据速率寄存器
- 设置为2.5SPS

- 读回参考寄存器进行调试
- 启动命令
读取转换数据:
- 从 Ain9到 Ain9的低信号读数差:转换结果= 1、550、847
- 从 Ain9到 Ain9的高信号读数差:转换结果= 6、946、233
- 通过 Ain9进行良好的低信号读取? 转换结果= 124、865
- 通过 Ain9进行良好的高信号读取? 转换结果= 8、388、607
- 显示时序的总体转换读数











