在學習單片機開發的過程中,中斷的概念對于內置控制是必不可少的。例如,如果不使用中斷來檢測不規則輸入的外部信號或USART通信中的接收完成等通知,則必須始終定期檢查信號輸入和功能結束通知。
我們可以用一張簡單的框圖來認識單片機的中斷概念,如下所示:
英銳恩單片機開發工程師介紹,如果使用中斷,則只需在發生某些處理(發生事件)時才將其作為中斷處理,這樣可以簡化程序而不浪費,并且可以節省功耗。
單片機的外設,例如定時器和串行通信,都有很多稱為中斷事件的功能,每次發生硬件中斷時,都會調用一個稱為中斷處理程序的功能塊,描述處理內容并執行中斷處理。
當不使用中斷時,使用稱為輪詢的方法發生的事件會根據需要定期監視和處理。這很容易單獨用程序來實現,但定期監控不知道何時發生的事件而導致效率低下,并且具有延遲處理時間的缺點。此外,無法處理輪詢監視期間之外發生的事件。