APM32F103 PA15 PB3 PB4作普通IO口
本帖最后由 Alden 于 2025-5-16 09:37 编辑#技术资源#
用APM32F103配置GPIO的时候会出现引脚初始化都一样,但有几个引脚不能正常当普通IO口用。其实原因是这些引脚是调试引脚,默认就是jtag或swd的功能,所以不能直接做普通IO口。
在用户手册中可以看到调试相关的引脚。
可以配置关掉调试引脚功能来释放引脚做普通IO口。
在代码中配置流程需要开费用时钟。
GPIO_ConfigPinRemap中的不同参数也就对应对标释放哪些引脚。
GPIO_NO_REMAP_SWJ就是默认的没释放调试引脚,PA13、PA14、PA15、PB3、PB4引脚都是调试功能,不能做普通IO。
GPIO_REMAP_SWJ_NOJTRST就是只释放PB4做普通IO。
GPIO_REMAP_SWJ_JTAGDISABLE就是释放PA15、PB3、PB4做普通IO,此时烧录仿真只能选SWD模式连PA13、PA14引脚。
GPIO_REMAP_SWJ_DISABLE就是PA13、PA14、PA15、PB3、PB4引脚全部都释放,执行后将无法通过烧录器仿真,烧录需要将烧录器复位接到MCU复位脚上,由烧录器在烧录前将MCU自动复位连接。谨慎使用这个模式。
按说明上所说,GPIO_REMAP_SWJ_JTAGDISABLE 只是关闭了JTAG 四线的功能引脚,但保留了SWD的二线功能引脚 一直调用API来操作,而且也很少复用JTAG引脚。
学习了,谢谢楼主 我们只是做了简单的保护机制,我总觉得jtag接口是复活接口,不能关闭 我按照配置改了,但是为啥PA15还是用不了/需要注意什么? 调试口我一般是让出来。
对自己的代码没有信心 楼主 您这属于直接关闭jtag调试器。
这程序跑起来,如何再烧录程序呀 永恒的一瞥 发表于 2025-5-20 19:19
楼主 您这属于直接关闭jtag调试器。
这程序跑起来,如何再烧录程序呀
复位脚接到烧录器复位上即可,复位后的短时间烧录脚还是烧录功能。
页:
[1]