在将SWD配置为普通引脚并配置为输出后,如果需要重新配置为SWD,需要将其配置为输入才行,如下:
Clk_SetFunc(ClkFuncSwdPinIOEn, TRUE); //配置SWD引脚为普通引脚模式
Gpio_InitIOExt(SWCLK_PORT, SWCLK_PIN, GpioDirOut, TRUE, FALSE, TRUE, FALSE); //P31 P27是下载引脚复用为输出
Gpio_InitIOExt(SWDIO_PORT, SWDIO_PIN, GpioDirOut, TRUE, FALSE, TRUE, FALSE);
Gpio_SetIO(SWCLK_PORT, SWCLK_PIN, TRUE);
Gp io_SetIO(SWDIO_PORT, SWDIO_PIN, TRUE);
Clk_SetFunc(ClkFuncSwdPinIOEn, FALSE); //配置SWD引脚为普通引脚模式
Gpio_InitIO(SWCLK_PORT, SWCLK_PIN, GpioDirIn);
Gpio_InitIO(SWDIO_PORT, SWDIO_PIN, GpioDirIn);