Part Number:AM5728Other Parts Discussed in Thread: AM5748
您好,使用AM5728/AM5748进行开发,DSP搭载RTOS,DSP为c66x,DSP的主频为750Mhz。
(RTOS的SDK的pdk_am57xx_1_0_16/packages的例程中,都是使用的1M)
(我尝试设置SPI的bitrate为 100K, 1M,2M,3M是可以完成传输的,但是4M就不可以了,是有什么限制吗?)
我使用10M、12M、48M之类的进行测试,卡在SPI_transfer函数
下图是TRM中的SPI1时钟使能,我将其使能。
但是SPI1的输入时钟如何配置我没有找到(我想配置为48M,但不知道默认多少,是否会因此限制SPI的传输速率)
(下图为SPI4的时钟使能,和管脚复用配置,但是未进行输入时钟配置)
下图是DSP的SPI参数时钟等配置:
下图为spi的DO D1模式选择:
问题:AM57xx的DSP所支持的最大SPI传输速率是多少?是否大于10M?如何设置
GuangKai Meng:
使用的例程是ti/pdk_am57xx_1_0_17/packages/MyExampleProjects/MCSPI_Loopback_idkAM572x_c66xExampleProject,默认每帧发送长度为50,我将其改为8,每帧八字节就可以使用48M进行传输了,如果使用大于4M的bitrate,将每帧长度设置为50,就会卡在中间,比如说产生二十多个时钟就停止了。这是为什么?是否和是采用中断还是poll模式有关?如果我想每帧发送大长度(1024B)的数据,应该如何修改?
,
Nancy Wang:
感谢提供测试细节我们会在测试之后给您回复。
,
GuangKai Meng:
您好,感谢您的回复。我通过更改为poll模式或者DMA模式解决了这个问题,但是我不知道默认的中断模式(不确定默认的模式是否为中断模式)为什么不可以。因此我想咨询一下,SPI中,poll、中断模式的区别是什么呢?
,
Nancy Wang:
感谢分享!
GuangKai Meng 说:SPI中,poll、中断模式的区别是什么呢?
请阅读TRM 24.4.4.7.3 Interrupt-Driven Operation / 24.4.4.7.4 Polling
https://www.ti.com.cn/cn/lit/ug/spruhz6l/spruhz6l.pdf