我将 ADS1118用于热电偶接口、并在微芯片 PIC16F886微控制器上工作。 我遇到了 SPI 接口问题。 系统正常工作。 但是、有时系统会挂起。 使用 ICD、我尝试对系统进行故障排除、并观察到程序在 EOC 检查时出现故障。 尽管我做出了努力、但我无法确定原因。 e2e.ti.com/.../heater_5F00_25_5F00_jul_5F005F00_on_5F00_off.c
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.
我将 ADS1118用于热电偶接口、并在微芯片 PIC16F886微控制器上工作。 我遇到了 SPI 接口问题。 系统正常工作。 但是、有时系统会挂起。 使用 ICD、我尝试对系统进行故障排除、并观察到程序在 EOC 检查时出现故障。 尽管我做出了努力、但我无法确定原因。 e2e.ti.com/.../heater_5F00_25_5F00_jul_5F005F00_on_5F00_off.c
Nirbhow、
首先、我要重申的是、您确实应该有一个示波器或逻辑分析仪。 您需要能够查看主器件和 ADC 之间的通信。 通过查看器件的响应、可以更轻松地调试问题。
其次、您使用哪种通信模式? 您是否使用32位数据传输周期? 还是使用16位数据传输周期。 如果您使用的是16位周期、则将程序更改为使用32位周期。 通过使用32位周期、您的最后一个 SCLK 会强制 DOUT/DRDY 处于高电平。 这将使得很容易找到 DOUT/ DRDY 从高电平到低电平的转换。 即使您对 DOUT/DRDY 进行采样也是如此。 在16位数据传输周期中、DOUT/DRDY 将根据数据的 LSB 值而变为高电平或低电平。
如果 LSB 较低、则很难找到 DOUT/DRDY 从高电平到低电平的转换。 第一次读取后、您将看到 ADC 数据速率下的小脉冲序列。 通常、我建议使用32位数据传输周期来确定传输低电平。 此外、我通常建议使用单次转换模式进行具有不同多路复用器设置的转换。
吴约瑟