1.不要太信任STM32内部的IO上下拉,必要的话,在外部接上下拉电阻。
2.当把JTAG的IO口当成一般IO口来使用时,要先制止JTAG。
即:要使用到PB3、PB4、PA13、PA14、PA15时,要先制止JTAG。
在库函数中,调用一下函数:
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//封闭jtag,保存swd
在寄存器编程中,用:
//JTAG形式设置,用于设置JTAG的形式
//mode:jtag,swd形式设置;00,全使能;01,使能SWD;10,全封闭;
//#define JTAG_SWD_DISABLE 0X02
//#define SWD_ENABLE 0X01
//#define JTAG_SWD_ENABLE 0X00
void JTAG_Set(u8 mode)
{
u32 temp;
temp=mode;
temp《《=25;
RCC-》APB2ENR“=1《《0; //敞开辅佐时钟
AFIO-》MAPR&=0XF8FFFFFF; //铲除MAPR的[26:24]
AFIO-》MAPR|=temp; //设置JTAG形式
}