工具/软件:
尊敬的 TI 团队:
我目前正在通过 SPI 为 TLA2518 提供 Cyclone V E FPGA。 我正在经营 SPI 模式 0 (CPOL = 0、CPHA = 0)、使用动态模式并遵循建议的帧格式。
我的 SPI 设置:
-
时钟频率: 31.25MHz(由 125MHz 系统时钟÷4 生成)
-
SPI 模式: 模式 0(时钟在空闲状态下为低电平,数据在上升沿采样,数据在下降沿驱动)
-
命令帧: 在 CS 低电平期间始终保持 24 位长(例如,用于设置 SEQ_MODE)
0x08 0x10 0x02 -
读回: 中的情况 下一个 SPI 帧 、CS 在大于 3.6 μs 的帧之间保持高电平 (450 个系统时钟)、以允许转换
-
MOSI (SDO): 驱动接通 保持一致 SCK
-
MISO (SDI): 采样时间 发送到 DOUT 上 SCK
-
初始化后、我将发送 12 位数据 动态通道选择帧 :12'b
100100000000(用于选择通道 2)
行为:
-
连接时的默认状态 AVDD 对于 AIN2、我获得预期结果(例如,)
0xFFF。 -
当我连接其他电压(例如 1.2V、2.0V) 或使 AIN2 悬空时、我会收到随机值、例如 0x820、0xC08、0x408、0x402、0x000
- SignalTap 波形显示:
sdo在下降沿上正确转换sdi是 在整个 SCK 周期内不稳定 —它似乎更改了中位- 即使 CS、时钟和时序都符合数据表规格、MISO 值看起来也损坏
问题:
- 时间内保持有效 一个完整的 SCK 周期 在 31.25MHz 吗?
- 是 SPI 模式 0 连续读数支持、或者 IS 需要模式 1 来实现稳定的 SDI 时序?
- 可能
sdi由于 ADC 输出 tri 状态或信号完整性而导致不稳定? - 是否建议添加 上拉/下拉或串联电阻 SDI 上?
我附上:
SignalTap 波形屏幕截图
连接原理图 



