PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
mangui zhang:
SPI只要在片选期间 CLK的次数就是发送数据的多少
中间停留 延时都应该不影响数据传输
你根据时序要求 看看是不是clk的频率太高了
PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
HG:
看上去是你的做法还没有让28335的SPI正常工作起来,你先检查发的是否正确,data/clk/cs波形是否正确?
然后再来看收的波形是否正确。
PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
Na Li8:
回复 HG:
检查了三个信号都对,我想请教一下,SPI配置完,PGA411是不是必须得重新复位一下啊?我没有做这一步。
PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
Na Li8:
回复 mangui zhang:
多谢热心同志,CLK频率不高,PGA411要求低于8MHz,我试了6MHz的都没有。
PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
Na Li8:
回复 HG:
还有就是我单步调试,SPI一发送,PGA411的FAULT引脚为高就报错,这是什么原因啊?
PGA411-Q1与28335 用SPI通讯,可以发出去数据但接收不到数据,发送的数据拿示波器看正确,片选信号,时钟信号也对。
The NCS pin is kept low when sending a 32-bit command. One byte is loaded to the SPI shift registers
and then sent to the slave device, which occurs 4 times to maintain the 32-bit time frame.
(1)拿EVM板采波形,看到它是发送一个字节然后延迟了4us,然后4个字节为一组,这期间片选信号为低。我将28335设为字节(8位)发送,然后加了延迟,片选就不是四个字节为低了,这样还是没有数据接收。
(2)四个字节一起发送,没有延迟,四个字节期间片选信号均为低,还是没有数据接收。
请问这是怎么回事啊?
Na Li8:
回复 HG:
下面是我采的波形。

蓝色是SPISIMO,绿色是SPISOMI,黄色是SPICLK。

蓝色是片选信号SPICS,绿色是SPISIMO,黄色是SPICLK。

检查的数据地址,CRC6都没有问题,请教是什么原因啊?多谢帮助
TI中文支持网



