STM32F1 SPI1重映射无输出BUG

在使用STM32F1进行SPI1重映射时,由于PB5与I2C1_SMBAI存在冲突导致SPI无输出。问题在于启用IIC时钟,即使SMBAI未使用。解决方案是禁用IIC配置时钟。配置步骤包括使能SPI1和AFIO时钟,以及重映射SPI1和禁用JTAG。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GD单片机无此问题(应该是国产设计阶段 解决了一些bug),你说气人不?

重点:STM32F1尽量不要用重映射,避免踩坑。

因IO口不足问题重映射SPI1,造成SPI 无输出。

原因是:软件里使能了IIC时钟

PB5 配置中I2C1_SMBAI与MOSI冲突(即使SMBAI 没有使用

解决:禁用IIC配置时钟

关键软件配置:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//重映射时钟开启

//PB3、PB4从JTAG口中解放出来

GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//禁用JTAG 使用串行SW

GPIO_PinRemapConfig(GPIO_Remap_SPI1, ENABLE);//重映射SPI1

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值