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

FIFO接收中断中填充发送数据

请问采用1M波特率在spi的fifo接收中断中填充发送fifo的数据可靠吗?采用4级fifo收发数据。

我测得fifo接收中断耗时3微秒,1M波特率是1微秒一个时钟,那接收中断期间往发送fifo填充的数据会不会因为前2微秒的时钟缺失而发送错误的数据?

Seven Han:

假设数据传输是连续的 (no breaks between 16 bit words),那么: – 1MHz clock rate is 1us cycle time or 1us per bit – 4 x 16 bit words = 64 bits – total time to fill the FIFO is 64us

If you measure the duration of of your RX FIFO ISR to be 3us, you have PLENTY of time to handle a saturated SPI bus at 1MHz, assuming that the rest of your system allows for 3us of SPI handling per 64us block.

请问采用1M波特率在spi的fifo接收中断中填充发送fifo的数据可靠吗?采用4级fifo收发数据。

我测得fifo接收中断耗时3微秒,1M波特率是1微秒一个时钟,那接收中断期间往发送fifo填充的数据会不会因为前2微秒的时钟缺失而发送错误的数据?

ming zheng8:

回复 Seven Han:

是的,接收没问题,每64微秒才接收一次,3微秒的处理时间没影响。关键是发送,假如我上升沿发送,下降沿接收,那我接收的时候,发送fifo里的值是什么时候填充?如果接收中断中填充,接收本身耽误了3微秒,再填充发送fifo,这时主机发的时钟上升沿已经过去三个了,我这边是从机,错过主机的时钟数据还能准确发送吗?还是说我这次填充的发送fifo的值是下一次才发送?

赞(0)
未经允许不得转载:TI中文支持网 » FIFO接收中断中填充发送数据
分享到: 更多 (0)