目标:需要在PA15上输出PWM波
PA15是jtag的jtdi引脚
步骤:
1、__HAL_RCC_AFIO_CLK_ENABLE(); 打开AFIO时钟
2、__HAL_AFIO_REMAP_SWJ_NOJTAG(); 关闭JTAG,保留SWD ,释放PA15
3、__HAL_AFIO_REMAP_TIM2_PARTIAL_1(); 把TIM2的CH1映射至PA15
以上操作后产生了一个问题:
再次下载不能下载,需要先按住复位才能下载,再次向咨询一下大神,有没有碰到这种情况的,为什么关闭JTAG会导致SWD也不能使用,但是如果我不重映射TIM2就没有问题。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
static void remap(void)
{
__HAL_RCC_AFIO_CLK_ENABLE();
volatile uint32_t map_copy = AFIO->MAPR;
map_copy &= ~((7 << 24) + (3 << 8));
map_copy |= (2 << 24) + (1 << 8);
AFIO->MAPR = map_copy;
}
一次全部重映射 OK
一周热门 更多>