?中斷分為兩路:12345用于產生中斷;678產生事件
外設為NVIC
?設計流程:
- 使能外設中斷
- 設置中斷優先級分組
- 初始化結構體
- 編寫中斷服務函數
初始化結構體:
typedef struct
{uint8_t NVIC_IRQChannel; 指定要使能或禁用的中斷通道例如: TIM3_IRQn表示定時器3中斷uint8_t NVIC_IRQChannelPreemptionPriority; 指定NVIC_IRQChannel對應的搶占優先級,值越小優先級越高, 搶占優先級決定了當多個中斷同時發生時的響應順序uint8_t NVIC_IRQChannelSubPriority;//NVIC_IRQChannel對應的子優先級(響應優先級)當多個中斷的搶占優先級相同時,子優先級決定響應順序FunctionalState NVIC_IRQChannelCmd;//NVIC_IRQChannel定義的中斷通道設置為ENABLE時,該中斷通道將被使能并可觸發中斷服務
} NVIC_InitTypeDef;