我的应用如下:
CC3200通过SPI(从机)接收数据,每收到1024个数据的时候通过WIFI发送一次,SPI采用DMA的乒乓模式,手机端接收数据并显示
问题如下:
SPI时钟设置为20MHZ时,图像卡的不行!设置为12.5MHZ时,还算连贯,设置为15MHZ时,显示效果介于前两者之间!
原因何在?????
补充:
Viki Shi说由于TCP的吞吐率为13Mbps所以20Mhz的SPI可能超出了TCP的吞吐率,我算了一下,这个确实是这样,
但13MHZ的SPI就不应该有问题了,实际上13MHZ的SPI还是卡,
另外如果我用20MHZ的SPI,每1024个点传输完成后(537us),等待416us再传输下一串数据,相当于953us传输一串数据,这样的话相当于8.6Mbps的吞吐率,实际效果虽然好很多,
但却没有12.5Mhz的SPI传输时好(此时传输每串数据的时间为860us),为何?
Viki Shi:
SPI速率太快了,WIFI缓存数据还没来记得发完,新的数据就过来了,图像数据被部分覆盖,导致最后显示的图像不完整。下图是CC3200 的吞吐量
user1252639:
回复 Viki Shi:
如果是这个原因的话,20MHZ卡是有可能的,但时钟是15MHZ的时候应该没问题才对,发送数据1024个数据的时间最快为1024*66.7*10.5(每传输一个字节实际占的同期数)=717.2us,相当于11.4Mbps,实际上15MHZ时比20MHZ好点,但也卡,12.5M的话才基本不卡