我将 ADS1015用于我的项目。
当我读取配置寄存器时、它 返回0xFF、0xFF。 我读取转换寄存器、它还返回 0xFF、0xFF。
为了帮助理解、请附上我的原理图和示波器图像。
现在、ADDR 已连接 VDD。 且仅使用 AIN0通道。(单端输入)
写入配置寄存器(0xC383)和读取配置寄存器
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.
Hyemin、
我已经浏览过您的帖子,但我并不完全确定问题是什么。 我有一项建议,我将在下面讨论。
根据示波器照片,您将写入设备,然后尝试回读刚刚写入的寄存器配置。 传输过程写入1001001地址、写入配置寄存器的01h。 然后将 C385h 写入寄存器。
之后、您会立即尝试从器件读回。 首先写入地址/配置寄存器、然后再写入从同一寄存器读取的数据。
查看示波器照片、我将在寄存器的写入和读取之间留出更多的时间。 现在、您在两者之间提供的时间非常短。 第二、我要确保主器件插入了一个停止和一个新的开始。 从示波器中可以看到从设备读取的开始,但写入后没有停止。
从器件读回时、ADS1015会确认地址和指针、但数据的第一个字节后会有一些不同。 有一个 ACK、但 SDA 的上升不像其他器件 ACK 那样跟随 SCL 的下降。
吴约瑟
Hyemin、
对于大多数系统、我们建议您清除噪声、但这取决于噪声的来源。 有一些周期脉冲看起来像低频(大约15Hz?) 以及一些额外的高频噪声。
您知道噪声来自哪里吗? 首先、我将检查电源线和接地线、以查看是否存在来自这些源的类似噪声。 如果噪声来自 EMI/RFI、那么我将检查电路周围的屏蔽尝试限制噪声的影响。
在 ADC 的前端、您可以尝试一些简单的 RC 滤波。 这可以通过共模和差分输入滤波来构建。 这与以下内容类似:
对于差分滤波、您可以将2R 和 Cdiff 的带宽设置为数据速率的10-20倍。 对于从 R 和 CCM 进行的共模滤波、您可以将带宽设置为差分滤波带宽的大约10倍。 这种 RC 滤波可能会降低高频噪声、但对于可能低于预期数据速率的脉冲可能效果很小。
吴约瑟