失败了也挺可爱,成功了就超帅。 |
前言
最近在画板子耍 我LED灯选用的 PB3/4/5 3个IO口 可是发现PB5可以点亮 最开始以为焊接问题等 查来查去发现 PB3/4默认是 JTAG引脚 做普通引脚是需要做重映射。并关闭默认功能。
1. JTAG/SWD引脚
2. 禁用JTAG功能
2.1 标准库
/* 1、使能复用时钟及对应IO端口 */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOB, ENABLE);
/* 2、只禁用JTAG | SWD正常使用 */
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
2.2 HAL库
/* 1、使能复用时钟及对应IO端口 */
__HAL_RCC_AFIO_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
/* 2、只禁用JTAG | SWD正常使用 */
__HAL_AFIO_REMAP_SWJ_NOJTAG();
3. 禁用SWD+JTAG功能
3.1 标准库
/* 1、使能复用时钟及对应IO端口 */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOB, ENABLE);
/* 2、全部禁用 SWD+JTAG */
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
3.2 HAL库
/* 1、使能复用时钟及对应IO端口 */
__HAL_RCC_AFIO_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
/* 2、全部禁用 SWD+JTAG */
__HAL_AFIO_REMAP_SWJ_DISABLE();
总结
不是每个引脚 都可以轻易作为普通引脚使用 需要注意它的默认功能