大家好,
通过SPI读取组件的输出时遇到困难。 转换器由ARM微处理器控制,安装在定制板上,但我们通过直接从输出引脚读取信号来测试它。 我们正在使用输入夹中的一些电阻器测试通道0,其他通道是浮动的。
这些是我们的寄存器配置,其他所有设置均为默认值:
-状态= 0x0100
-模式= 0x0100
-时钟= 0x0F0E
- CFG = 0x0000
初始化包括以下步骤:
—等待就绪信号
清除FIFO队列
-读取寄存器
—编写我们的配置
-再次阅读以查看是否更改了寄存器
之后,我们在下降沿上启用DRDY中断和CLKIN信号。 在DRDY中断中,我们发送了一个NULL命令来读取信号,但事情变得奇怪:所有通道的答案都是零,甚至是浮动的; 即使我们将寄存器设置为在SPI数据全部清空之前保持低电平,DRDY引脚也会提供短的负脉冲; 我们得到0xFF24而不是读取状态寄存器。
我们还尝试在不等待DRDY触发器的情况下发送NULL命令,只有当命令是 在DRDY信号后发送的第二个命令时,我们才正确地看到状态值,第一 个答案仍然是0xFF24。
另一项测试是将DRDY模式更改为脉冲,我们的行为与第一个场景中描述的相同。
1. 0xFF24是否为常规ACK? 数据表仅提及重置命令。
2.我们的时钟频率约为7900MHz,是否必须达到8.192 MHz的完美额定值?
3.在DRDY触发后,我们是否有最短的等待时间才能看到任何数据?
提前感谢您的帮助。
Angela