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