主题中讨论的其他器件: TMS570LC4357
我正在研究使用 TMS570lc4357 (SPI1)与两个 ADS131M08器件进行连接、并且 MISO 线路上存在一些奇怪的行为。 该设计已配置为使用 MibSPI 并行模式、将数据从 MOSI[0]时钟输出到两个器件,并使用 MISO[0]和 MISO[1]来接收响应。 一个或两个 ADS131M08器件随机按时钟移出一个额外的字节、从而将整个10字帧移动一个字节。 这会导致 STATUS/ACK 字节、CRC 和所有数据之间都被移动一个字节。 下图是 MISO[0]正确,但 MISO[1]有一个额外移入的字节的示例。 有趣的是、MISO[1]器件表示最近发生了复位、而 MISO[0]则表示发生了重新同步。 如果您忽略看似错误移入的0x04、则 MISO[0]的 CRC 是正确的、MISO[1]的 CRC 是正确的。 另一个有趣的观察是 MISO[1]线在帧结束时过高。

下图显示了稍后的消息、其中 MISO[0]具有额外的字节,且在考虑该额外字节时,CRC 0xBD35与从0x4106开始计算的 CRC 匹配。 由于 CRC 未检出,MISO[1]中的数据显示已损坏。 MISO[0]信号在帧结束时似乎过早转换为高电平。

任何想法或想法都是受欢迎的,因为这个问题让我困扰了几天。 感谢你的帮助。