基於芯片創建的工程是沒有CubeMX配置的,所以JTAG引腳無法直接當做普通引腳使用,需要重寫HAL_MspInit
函數:
void HAL_MspInit(void)
{
/* USER CODE BEGIN MspInit 0 */
/* USER CODE END MspInit 0 */
__HAL_RCC_AFIO_CLK_ENABLE();
__HAL_RCC_PWR_CLK_ENABLE();
/* System interrupt init*/
/** NOJTAG: JTAG-DP Disabled and SW-DP Enabled
*/
__HAL_AFIO_REMAP_SWJ_NOJTAG();
/* USER CODE BEGIN MspInit 1 */
DBGMCU->CR &= ~((uint32_t)1<<5); //關閉異步跟蹤
AFIO->MAPR = (AFIO->MAPR & ~((uint32_t)0x7 << 24)) | (2 << 24); /* PA15 PB3 PB4 */
/* USER CODE END MspInit 1 */
}
把上面函數粘貼至board.c
就可以了。