困擾在於: 使用MXCUBE生成了工程之後, 居然不能夠自動進入中斷, 而必須在主函數中調用函數才能實現串口讀\寫操作.
中斷函數中只有這些內容.
void USART1_IRQHandler(void)
{
/* USER CODE BEGIN USART1_IRQn 0 */
/* USER CODE END USART1_IRQn 0 */
HAL_UART_IRQHandler(&huart1);
/* USER CODE BEGIN USART1_IRQn 1 */
/* USER CODE END USART1_IRQn 1 */
}
要實現單字節的中斷功能, 需要添加以下代碼:
中斷函數內部只需一個語句即可提取緩存數據, 其他不用做, 中斷標誌會自動復位