[STM32H7] SPI与I2S共用引脚引发噪声

[复制链接]
 楼主| ClarkLLOTP 发表于 2025-4-20 16:09 | 显示全部楼层 |阅读模式
STM32H743配置SPI3与I2S2共用GPIO,音频播放时伴随高频嘶嘶声。单独使用任一外设正常,是否因IO复用器未彻底隔离信号路径?
回复就哭哭 发表于 2025-4-30 23:40 | 显示全部楼层
某些共用引脚默认具有上拉/下拉,而SPI/I2S在不同状态下对这些引脚的驱动电平不同;
公羊子丹 发表于 2025-5-26 07:23 | 显示全部楼层
是不是SPI和I2S切换的时候有残留配置没清掉?GPIO可能还保留上一次的模式。
周半梅 发表于 2025-5-26 07:25 | 显示全部楼层
我之前也遇到类似问题,最后是在切换外设前手动用GPIO_InitTypeDef重置了一遍管脚才解决的。
帛灿灿 发表于 2025-5-26 07:26 | 显示全部楼层
STM32 的复用引脚确实可能在切换时产生干扰,特别是高速IO,建议彻底禁用未用的外设。
童雨竹 发表于 2025-5-26 07:27 | 显示全部楼层
嘶嘶声听着像是时钟干扰,试试把SPI或I2S的引脚换一组专用的,不共用看还会不会出问题。
万图 发表于 2025-5-26 07:28 | 显示全部楼层
看起来像是复用冲突了,I2S 尤其对干扰敏感,可以先关 SPI 只测 I2S 看是不是纯净的。
Wordsworth 发表于 2025-5-26 07:29 | 显示全部楼层
共用引脚时,建议不要动态切换模式,特别是频率差距大的两个外设,很容易出毛病。
Bblythe 发表于 2025-5-26 07:30 | 显示全部楼层
会不会是DMA也没配置对?I2S播音频时,如果SPI还偶尔触发DMA会把FIFO扰乱。
Pulitzer 发表于 2025-5-26 07:31 | 显示全部楼层
音频出现嘶声,有可能是MCLK或WS脚也被别的外设干扰了,查查系统的全局时钟配置也有帮助。
Uriah 发表于 2025-5-26 07:32 | 显示全部楼层
我用H750也遇过类似的音频噪声,最后是关掉I-cache才正常,可能跟指令或数据干扰有关。
Clyde011 发表于 2025-5-26 07:32 | 显示全部楼层
建议你用逻辑分析仪抓一下共用IO的波形,能看到有没有残余波形或竞争条件。
zhouyong77 发表于 2025-5-26 07:52 来自手机 | 显示全部楼层
应该是在发生引脚切换过程中导致的
daichaodai 发表于 2025-5-26 08:06 来自手机 | 显示全部楼层
感觉像是切换噪声,按楼上的说法试试看。
onlycook 发表于 2025-5-26 11:21 | 显示全部楼层
可能存在GPIO复用冲突吧。
elephant00 发表于 2025-5-26 11:28 | 显示全部楼层
在切换外设时,通过__HAL_RCC_GPIOx_CLK_DISABLE()临时关闭未使用外设的GPIO时钟,减少信号泄漏。
flycamelaaa 发表于 2025-5-26 14:00 | 显示全部楼层
STM32H743的GPIO复用器在切换外设时可能未完全隔离信号路径,导致SPI3与I2S2的信号在共享引脚上产生冲突。
powerantone 发表于 2025-5-26 15:20 | 显示全部楼层
SPI3和I2S2可能用的不同时钟源,若时钟树配置不当,可能导致采样时钟抖动或相位偏移,引发音频噪声。
jcky001 发表于 2025-5-26 15:30 | 显示全部楼层
为音频Codec和数字部分使用独立LDO供电,并在PCB上将模拟地与数字地通过磁珠单点连接,减少数字噪声耦合。
stormwind123 发表于 2025-5-26 18:00 | 显示全部楼层
高速SPI通信可能通过电源或地线将噪声耦合至音频模拟电路,尤其当两者共享LDO或PCB布局未隔离时。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

350

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

24

主题

350

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部