TI中文支持网
TI专业的中文技术问题搜集分享网站

CC3200中怎么解决SPI传输中错位的问题?

如图所示,SPI接收,使能DMA  FIFO,每次发送512个8位数据,

上面黑色大括号为实际的发送顺序,也是我想要的数据,

但实际接收到的数据是下面红色大括号的数据,也就是说错位了!!!

这个问题该怎么解决为好呢????

是否可以利用上面那个SPI_BUSY信号进行对齐,如果可以的话,该怎么做?如果不行的话,该怎么办??

Viki Shi:

请问所使用的芯片是什么?

user1252639:

回复 Viki Shi:

CC3200

user1252639:

回复 Viki Shi:

如果不用清理FIFO,还有别的方法吗?

Viki Shi:

回复 user1252639:

参考下这边的类似问题:e2e.ti.com/…/614858

user1252639:

回复 Viki Shi:

如下图,实际的数据如黑色大括号所示,怎么能保证接收正确,不会出现下面红色所示的情况呢?

user1252639:

回复 Viki Shi:

我的问题跟这个不一样,不是一回事!

灰小子:

回复 user1252639:

这种情况一般在软件上要采用数据完整性的一些验证,比如添加数据长度和CRC的字节等。

user1252639:

回复 灰小子:

添加也不是个好办法吧,因为已经有错位发生了,加校验会一直提示接收到的数据错误,如果加包头应该可以,但这样的话每次接收到数据后,需要从前到后先找包头,这样会不会太麻烦,有没有更好的办法 呢,我加一个信号SPI_BUSY,如上图,想着或许可以用上,但不知道具体该怎么用!

赞(0)
未经允许不得转载:TI中文支持网 » CC3200中怎么解决SPI传输中错位的问题?
分享到: 更多 (0)