This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320f2809的spi通信的一些问题

Other Parts Discussed in Thread: TMS320F2809

您好,我最近要完成fpga和dsp芯片的spi通信,因为之前对dsp没有接触,所以现在正在看它的数据手册,我用的芯片是TMS320f2809,在看的过程中对它的spi通信时序图地方有些不明白:

(1)从机选择信号cs无效时,spi时钟此时应处于什么状态?也就是说是在cs信号有效时开始sck时钟还是说sck时钟不管cs信号是否有效都一直在输出时钟信号?

(2)该芯片能否连续发送数据,即cs信号能否一直处于低电平的有效状态,还是说每发送一次指定位数的数据,需要把cs信号拉高一段时间?

(3)在介绍spi的时候,当时钟的极性cpol=0,时钟相位cpha=0时,数据手册给的是在上升沿发送数据,下降沿接收数据,

(手册是TMS320x280x, 2801x, 2804x Serial Peripheral Interface  Reference Guide,

Literature Number: SPRUG72   February 2009)

但是我在看对于spi通信协议的介绍的时候如果处于这种情况是上升沿接收数据,下降沿发送数据,和芯片介绍正好相反,这是怎么回事?还是说spi的通信协议根据不同的芯片其规定也是不同的吗?

因为之前对dsp从来没有接触过,所以很多问题看了手册还是不太明白,谢谢!

  • 关于问题一:可以看该文档后面的SPI Example Waveforms时序图相信就可以明白。

    关于问题二:可以CS一直为低。

    关于问题三:极性和锁存时间,上升沿发送还是下降沿发送,可以看一下SPICCR寄存器中的说明,这些都是可以根据不同芯片要求灵活设置的。

  • 好的,非常感谢,还有一个问题能不能帮我解释一下,谢谢

    在这个dsp芯片进行spi通信时,是当cs信号有效时,里面对发送或接收数据进行计数的计数器立即进行计数还是必须要等到相应的sck的上升沿或下降沿?

    因为对于问题一我刚仔细看了文档后面的SPI Example Waveforms时序图,当cs信号无效时sck信号也是处于低电平,当cs信号有效时sck才开始有效。

    因为我是用fpga作主机实现与该芯片的spi通信,cs信号有效时sck时钟不能马上有效,需要一个建立稳定时间,这个建立稳定时间是实际产生sck时钟的4-5个周期,也就是cs信号有效后的一段时间后sck信号才能有效,而这段时间是不能忽略掉的,所以我想问一下这种情况是否可以?也就是说dsp里面进行发送接收计数的计数器是不是要cs信号有效同时sck时钟的沿变化的时候才计数?

    非常感谢您的帮助!谢谢