IFX_OwenSu 发表于 2024-8-23 13:40

XMC4000系列实现SPI全双工超过20MHz传输的注意事项

XMC系列在DAVE上的开发可以通过LLD和APP两种方式进行,官方提供的例程一般是基于APP进行配置的,可以参考附件。
但最近很多小伙伴在测试的过程中发现SPI的速率设置超过13MHz时就会出现接收错误的情况,master发送给slave时,从站可以正确接收,但是slave将数据返回master时就会出现接收错误。经过查看datasheet和相关的手册发现,我们的GPIO口因为pad type的不同能设置的驱动模式还有所不同。
可参考下图:

不同的pad对应的功能还不同,A1对应的时低速输出驱动,A1+是中速,A2是高速。可以参考下图:

所以想要SPI传输速率超过20MHz,最好选择pad type为A2的引脚,而且需要选择为USIC module 1对应的通道,具体可以参考datasheet:

下面是经测试过后能实现超过20MHz的引脚组合(XMC4700 RELAX KIT),仅供参考,实际配置请根据自己使用的芯片来决定.


caigang13 发表于 2024-9-2 07:29

这个如果没有仔细看芯片手册的话,确实不容易注意到。

IFX-WellinZ 发表于 2024-9-12 08:19

IO的反转速率的问题。如果Dave能够根据速率自动匹配就好了,或者提示用户去选择一下。

shenxiaolin 发表于 2024-9-20 17:55

其实觉得如果是复用模式就自己做选择就好了,底层封装好

yangxiaor520 发表于 2024-9-21 09:08

SPI跑到20MHZ的速率很少吧,除了外挂是存储或者高速ADC芯片。

Burnon_FAE_1 发表于 2024-9-25 11:14

这个如果不注意datasheet这部分细节,确实很难想到是这部分问题

daichaodai 发表于 2024-10-3 23:03

所以说关键还是要仔细看芯片手册才得行啊

IFX-WellinZ 发表于 2024-10-15 20:12

似乎通过LLD配置也无法避免这个问题?

guijial511 发表于 2024-10-17 07:31

跑20MHZ的速率一般只有高速ADC外设可能需要。

Amazingxixixi 发表于 2024-10-30 14:49

超过一定速度了对于总线以及硬件设计要求就高了

中国龙芯CDX 发表于 2024-10-30 17:36

SPI全双工超过20MHz这个速率非常快

suncat0504 发表于 2024-10-30 18:30

好家伙,这个速度太快了。好多设备用不了吧?

suncat0504 发表于 2024-10-30 18:31

是为了大数据吞吐量用的?比如视频、音频处理?

小小蚂蚁举千斤 发表于 2024-10-30 22:10

GPIO口的复用设置很重要

地瓜patch 发表于 2024-10-30 23:19

速度高了会增加误码率吗

IFX_OwenSu 发表于 2024-10-31 09:43

地瓜patch 发表于 2024-10-30 23:19
速度高了会增加误码率吗

当SPI速率增高时,数据传输的时间会减少,这意味着数据信号的上升和下降时间也会减少。如果信号的上升和下降时间太短,可能会导致信号失真,进而导致误码。

IFX_OwenSu 发表于 2024-10-31 09:47

suncat0504 发表于 2024-10-30 18:31
是为了大数据吞吐量用的?比如视频、音频处理?

高清摄像头/高性能存储器/高速音频接口/高速传感器接口等应用都会用到

suncat0504 发表于 2024-10-31 09:55

IFX_OwenSu 发表于 2024-10-31 09:47
高清摄像头/高性能存储器/高速音频接口/高速传感器接口等应用都会用到

确实,这些应用的吞吐量巨大,需要高速接口。

星辰大海不退缩 发表于 2024-10-31 10:19

SPI全双工超过20MHz速率非常快
页: [1]
查看完整版本: XMC4000系列实现SPI全双工超过20MHz传输的注意事项