你好,
我使用DA14580作为SPÏmaster与外部控制器交换数据。spi驱动程序的性能似乎非常差(主要是由于延迟,每个发送的字节之间大约有4µs)。有没有另一个驱动程序可以让我获得更高的波特率?
谢谢!_马蒂厄
嗨,马修,
抱歉,没有更好的spi驱动程序版本,大约4us是da等待数据传输结束的时间量。我想你不用先进先出。尝试以您喜欢的模式使用它,以便更快地发送数据。字节之间的时间将减少。
谢谢你的对话
你有使用先进先出的例子吗?芯片起着主人的作用。
谢谢。_马蒂厄
抱歉,但是没有将SPI与FIFO一起使用的示例。请看一下数据表以便实施。
数据表没有给出使用方法的确切细节。你有什么指导方针吗?
嗨,又来了,
主要的是,我不明白为什么先进先出会减少两个字节之间的时间。
_马蒂厄
抱歉,没有关于如何在SPI中使用FIFO的文档。
但是,如果您尝试将FIFO设置为TX\ U模式,例如:SetBits16(SPI\ u CTRL\ u REG1,SPI\ u FIFO\ u MODE,0x02);然后调用如下命令:
spi_cs_low();而(1){if(GetBits16(SPI\u CTRL\u REG,SPI\u TXH)==0){SetWord16(SPI_RX_TX_REG0,(uint16_t)i);//将数据写入发送}i++;}spi_cs_high();
您将看到每个连续字节之间的时间在减少。
嗨,马修,
抱歉,没有更好的spi驱动程序版本,大约4us是da等待数据传输结束的时间量。我想你不用先进先出。尝试以您喜欢的模式使用它,以便更快地发送数据。字节之间的时间将减少。
谢谢你的对话
你好,
你有使用先进先出的例子吗?芯片起着主人的作用。
谢谢。
_马蒂厄
嗨,马修,
抱歉,但是没有将SPI与FIFO一起使用的示例。请看一下数据表以便实施。
谢谢你的对话
你好,
数据表没有给出使用方法的确切细节。你有什么指导方针吗?
谢谢。
_马蒂厄
嗨,又来了,
主要的是,我不明白为什么先进先出会减少两个字节之间的时间。
_马蒂厄
嗨,马修,
抱歉,没有关于如何在SPI中使用FIFO的文档。
但是,如果您尝试将FIFO设置为TX\ U模式,例如:SetBits16(SPI\ u CTRL\ u REG1,SPI\ u FIFO\ u MODE,0x02);然后调用如下命令:
spi_cs_low();
而(1)
{
if(GetBits16(SPI\u CTRL\u REG,SPI\u TXH)==0)
{
SetWord16(SPI_RX_TX_REG0,(uint16_t)i);//将数据写入发送
}
i++;
}
spi_cs_high();
您将看到每个连续字节之间的时间在减少。
谢谢你的对话