Other Parts Discussed in Thread: ADS1255
器件型号: ADS1255
大家好:
我需要您的帮助、弄清楚我们使用 ADS1255 的设计出了什么问题。
我们在 RDATAC 模式下使用 ADS1255 时遇到问题、在此模式下、器件有时仅输出一个 24 位转换结果、然后停止输出任何更多数据、直到再次发出 SDATAC 然后 RDATAC。 此行为表明可能会丢失串行同步、而不是永久故障。
设计:
该设计测量来自 AIN0 上带有 ADS1255 的传感器(以 AINCOM 上的公共 GND 为基准)的模拟信号、并通过 SPI 将数据发送到另一个 PCBA 上的 NXP LPC1768 微控制器。
尽管我们知道这不是推荐的解决方案、但 SPI 总线通过相对较长的带状电缆进行布线、在发送侧使用反相驱动器、在接收器侧使用反相施密特触发器 (SN74LVC14APW)。 使用差分探头检查带状电缆上的信号是合适的、没有过冲、振铃或噪声;信号电平正确、上升时间足够。 时钟速度约为 780kHz。 SPI 设置为 CPOL:0 CPHA:1
逻辑分析仪捕获显示反相信号的原因是这种反相设置导致的。
问题:
我们的测量存在问题、症状可能显示我们使用的 ADS1255IDBR 模数转换器或其使用方式存在问题。 发送“持续读取数据“命令(0x03 或 0xFC 反转)后、芯片有时会在 3 个字节的 1 次传输后丢失、然后在“Stop Read Data Continuously“命令(0x0F 或 0xF0 反转)和下一个“Read Data Continuously“命令(再次开始工作并正常发送数据)之前不会发送任何其他内容。 同时、波形上的 DRDY 信号(!INT)看起来也很奇怪。
下面的我们展示了使用 Saleae Logic Pro 16 捕获的通信、在该通信中、通信中断并在另一个启动/停止读取数据周期正常恢复。 在此事件中、我们只看到 24 位数据点(根据实际模拟信号,这超出了预期范围) 、在执行下一条命令之前、不再显示数据。
逻辑分析仪捕获数据:
00_SetupBeforeCommunication.png

01_WholeCommunication_marked.png

02_GoodAndBadCommunication_marked.png

03_BadCommunicationZoomed_marked.png

04_GoodCommunicationZoomed.png

您是否知道此处的问题可能是什么原因导致的?
提前感谢、
Norbert