STM32F103单片机在不需要使用 JTAG 调试接口的情况下,释放引脚给其他功能使用。

最近调试STM32F103的时候,由于引脚比较紧张就用了PB3(SYS_JTDO-TRACESWO)引脚,带电下载完程序后,功能都是正常运行,但是断电再上电,PB3引脚就不受控制了,后来查了一下发现PB3不是普通的IO,需要关闭复用功能,关闭方式如下。

SWJ (Serial Wire JTAG) 是一个 STM32 微控制器的调试接口,通常可以使用两种模式:SWD (Serial Wire Debug) 和 JTAG。

JTAG 是一种常用的调试接口,它需要占用一些特定的引脚,如 TDI、TDO、TMS、TCK。某些项目可能只需要使用 SWD 接口进行调试,而不需要 JTAG。

**__HAL_AFIO_REMAP_SWJ_NOJTAG();**是一个宏,它的作用是通过修改 AFIO (Alternate Function I/O) 控制寄存器来禁用 JTAG 接口并将这些引脚重新映射,释放出来供其他功能使用。这使得开发者可以将 JTAG 引脚重新用于普通的 GPIO 引脚,或者用于其他外设功能。

相关推荐
蜡笔小电芯1 小时前
【STM32】const 变量存储学习笔记
笔记·stm32·学习
扣篮发型不乱4 小时前
STM32 | HC-SR04 超声波传感器测距
stm32·单片机·嵌入式硬件
几个几个n6 小时前
STM32-第五节-TIM定时器-1(定时器中断)
stm32·单片机·嵌入式硬件
EutoCool7 小时前
Qt窗口:QToolBar、QStatusBar、QDockWidget、QDialog
开发语言·数据库·c++·嵌入式硬件·qt·前端框架
国科安芯8 小时前
车规级ASM1042芯片在汽车无线充电模块中的应用探索
人工智能·单片机·嵌入式硬件·物联网·安全·汽车
学不动CV了10 小时前
深入理解C语言内存空间、函数指针(三)(重点是函数指针)
c语言·arm开发·数据库·stm32·单片机·嵌入式硬件·c#
学不动CV了19 小时前
C语言32个关键字
c语言·开发语言·arm开发·单片机·算法
姜暮儿19 小时前
U盘直接拔出不在电脑上弹出有何影响
stm32·单片机·嵌入式硬件
O。o.尊都假都21 小时前
STM32之LVGL移植
stm32·单片机·嵌入式硬件·freertos·lvgl
学不动CV了21 小时前
ARM单片机OTA解析(一)
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机