各位,目前我们正在使用RM42L432测试SPI的性能,IAR编译器。配置SPI为普通SPI,具体的代码如附件。
目前遇到的问题是,当连续发送16bit数据的时候,每次发送的间隔大概为2us,如下图所示,请问有什么办法可以缩短间隔吗?
另外,如果采用MibSPI的话,能否解决上面的问题?
gaoyang9992006:
MibSPI应该可以,另外你这个要看看每次发送后都干了什么,为何会有个延时。
gaoyang9992006:
我看了函数原型,认为间隔是这样产生的。
:
首先这个函数的设计是为了发送一串数据设计的,该函数开始部分对SPI进行初始化,这一部分代码是为何产生间隔的重要原因,而楼主的代码是每次发送了一个字符而已,因此从比例上来看是显得相对速度慢了,实际上并不是这样,如果楼主一次发送一大串的数据,比如256Byte,就不会显得2us,间隔大了,还有个方法就是你把初始化和发送部分进行分离来使用,肯定就会一次初始化剩下的就呼呼的发送就行了。