本人在做一款产品,发现将GPIOA.15设置推挽输出,但是发现配置好后不管置高还是置低都是输出3.3V,不受程序控制。
问题现象:设置PA15输出,但无法控制输出,输出一致3.3v.
程序提示:无
问题原因:因为PA15是JTAG的JTDI端口的引脚,默认不是普通IO口,故无法当做普通IO操作。
解决方法:1、开启AFIO复用功能时钟
2、禁止JTAG对应引脚,恢复普通IO。
举一反三:
所以写GPIO_Remap_SWJ_Disable的话就禁止JTAG和SWD。若只使用SWD仿真,就只禁止GPIO_Remap_SWJ_JTAGDisable。
实例: