踩坑---注意复位后引脚初始化功能
背景
做综合案例训练的时候,把PB3和PB4当做了普通IO进行了配置,运行过程中发现很奇怪,怎么输出和配置的不一致。debug调试显示的IO输出和万用表量的都不一样。由于添加了其他功能代码,还把每个部分代码都抽出来单独调试,最后发现就是那两个端口配置不了。忽然想起来,是不是用到烧录口啥的了,查询一下。果然....
解决办法
参考:stm32 将PB3,PB4设置为普通IO模式_stm32 pb3 pb4 配置为普通io口 hal库-CSDN博客
//打开GPIO口时钟,先打开复用才能修改是否停用复用功能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);
//关闭JTAG,使能SWD
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);