STM32F1 SPI1重映射无输出BUG

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

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

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

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

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

解决:禁用IIC配置时钟

STM32F1 SPI1重映射无输出BUG_第1张图片
STM32F1 SPI1重映射无输出BUG_第2张图片

关键软件配置:

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

你可能感兴趣的:(stm32)