我尝试在ADS8330上配置和验证配置寄存器失败。 从数据表和其他文档中,SPI应该是CPOL = 0,CPHA = 1。 当我尝试将0x5FD写入配置寄存器时,我读回0x9FA。 波形如下所示。 我们一直在努力解决这个问题,因此我们非常感谢您提供任何帮助。 (注意:我也尝试过CPHA = 0,也没有运气)
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.
您好Tim,
我认为输出是正确的,但您没有在正确的时钟边缘上读取。
ADS8330在芯片选择的下降沿启动MSB,然后在SCLK的下降沿启动其余位。 ADS8330还可以捕获SCLK下降沿上的数据。
写入ADC时,主机应更新SCLK上升沿的数据。 此外,从ADC读取数据时,主机还应捕获SCLK上升沿的数据。
读取SCLK上升沿上的SDO引脚会导致寄存器值0x4FD,它与您写入寄存器的内容相匹配(忽略D8的值)
我认为您需要调整SPI端口的设置。 SPI模式00应工作。
此致,
Keith Nicholas
精密ADC应用
Keith
非常感谢您阐明ADS8330的数据传输操作。 结果是(大部分)协议分析器出现了问题。 由于ADS8330不遵守标准SPI的“规则”(数据输出在一边,数据输入在另一边),协议分析器无法正确转换数据传输。 但是,当我的微芯片PIC18F控制器设置为"SPI1"(我相信这就是微芯片所称的SPI 00 -只是为了增加混乱)时,我按预期在0x4FD中读取。 再次感谢您澄清数据传输操作-这让我走出了困境。
此致,
蒂姆