主题中讨论的其他器件:RM48L952
您好!
我有一个定制板、它嵌入了具有上述器件型号的外部 ADC。 我想从端口4读取数据、但始终读取数据属于端口1。 请查找随附的用于读取端口4数据的 SPI 跟踪。
此致、
Cosmin Briceag
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.
您好!
我有一个定制板、它嵌入了具有上述器件型号的外部 ADC。 我想从端口4读取数据、但始终读取数据属于端口1。 请查找随附的用于读取端口4数据的 SPI 跟踪。
此致、
Cosmin Briceag
Cosmin、
该器件具有用于配置器件的可编程 SPI 协议(请参阅表8.8)。 您使用哪种模式? 在我看来、您从模式角度看待 MISO 和 MOSI 的方式不同。 这两个信号都应在一个边沿上捕获、并应在另一个边沿上转换。 在本例中、MISO 在下降沿转换、MOSI 在上升沿转换。 我认为、如果您纠正此差异、您可以解决此问题。 请参见下图:
但愿这对您有所帮助。 很抱歉耽误你的时间。
艺术
您好、Art、
在我看来(如果我错了、请纠正我)、MISO 触觉采样也在上升。 这是 DATA_CFG 寄存器的默认配置。 此外、我用0x00对其进行了覆盖(SPI 模式0)。
顺便说一下、我找不到表8.8。
在开始将器件与输入进行交互之前、我是否必须做一些初步的事情? 目前、我在启动阶段执行以下操作:
setRegisterBits(SYSTEM_STATUS_ADDRESS, SYSTEM_STATUS_BOR_MASK); setRegisterBits(GENERAL_CFG_ADDRESS, GENERAL_CFG_CH_RST_SET_ALL_CH_AS_ANALOG_INPUTS); writeSingleRegister(SEQUENCE_CFG_ADDRESS, SEQUENCE_CFG_SEQ_MODE_MANUAL); writeSingleRegister(DATA_CFG_ADDRESS, 0x00);
谢谢、
此致、
余弦
Cosmin、
很 抱歉、我是指第24页的表8-8。
通常 、对于 SPI、在同一个边沿上的 MISO 和 MOSI 采样数据。 两者都在同一个边沿转换数据。 在您的情况下、MOSI 在时钟的上升沿转换。 这也是模式00的边沿、ADC (从器件)在该边沿上捕获信号。 根据延迟、建立时间和保持时间、它不能确定逻辑状态是什么。 主器件应在模式00的下降沿转换数据。 在下面、我展示了典型模式00通信 和无效模式00通信的和示例、其中主器件在上升沿转换数据。
3. 我建议您先执行寄存器写入操作,然后执行读取操作,以确认 SPI 配置正确。 我认为、一旦 SPI 通信正确、您就不会遇到输入错误(端口)的问题。
希望这对艺术有所帮助