void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
//添加回調后的程序邏輯
if (htim->Instance == htim2.Instance) //判斷是否定時器2
{
}
}
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
//添加回調后的程序邏輯
if(huart->Instance == USART1) //判斷是否串口1
{
}
}
中斷回調函數是在某個中斷發生完成之后調用的,在用Cubemx生成的代碼中,其實已經有生成中斷回調函數了的,不過那個我們可以不用管,自己在項目里重寫中斷回調函數以及程序邏輯即可
從上圖我們可以看到,自動生成的代碼中,中斷回調函數都有一個__weak 關鍵字,加上了__weak 修飾符的函數,用戶可以在用戶文件中重新定義一個同名函數,最終編譯器編譯的時候,會選擇用戶定義的函數,如果用戶沒有重新定義這個函數,那么編譯器就會執行__weak 聲明的函數,并且編譯器不會報錯。所以我們可以在別的地方定義一個相同名字的函數,而不必也盡量不要修改之前的函數。
上一篇:STM32 實現內部Flash的讀寫(HAL庫版)
下一篇:STM32 實現 4*4 矩陣鍵盤掃描(HAL庫、標準庫 都適用)
- 熱門資源推薦
- 熱門放大器推薦
設計資源 培訓 開發板 精華推薦
- 使用 Microchip Technology 的 MIC2776H-YM5 的參考設計
- 用于三相交流電機的 200W、24V 交流轉直流單輸出電源
- ADM1075,用于中心局交換機的-48V熱插拔控制器
- 使用 ON Semiconductor 的 NCP4302 的參考設計
- 使用 Analog Devices 的 LTC4076 的參考設計
- 使用 PNP 晶體管的 NCV2574 反相降壓-升壓穩壓器關斷電路的典型應用
- GLDRONE_ESP32_PX4_PICO
- AKD4565,AK4565 評估板,20 位,2CH A/D 和 D/A 轉換器
- LTC2955 的典型應用 - 具有自動開啟功能的按鈕開/關控制器
- EVB-USB2514BC,評估板使用 USB2514B 高速 USB 2.0 多 TT 4 端口集線器,支持電池充電