選擇合適的微控制器策略
高集成度與中斷延時和安全
本文引用地址:http://www.104case.com/article/274480.htm現在的微控制器在其片內集成了越來越多的外設。通常來說,外設對微控制器高效的完成工作起著至關重要的作用。外設起著連接傳感器、系統控制、數據通信、故障控制和計時等多種作用。傳統方法是使用中斷來與片內外設通信。這樣的優勢很明顯,大大的節約CPU時間,使得軟件不必循環檢測外設狀態,從而本質上提高了CPU的效率。即使如此,中斷方式仍然有一些劣勢,其中一個就是中斷例程中的上下文切換要花費一些處理周期。對于現代的CPU架構來說,中斷的上下文切換需要20-100個時鐘周期。假設有一個簡單的任務,它獲取發來的SPI數據。如果SPI的速率是1Mbps,則SPI接收中斷的頻率可達125KHz.如果SPI中斷處理需要25時鐘周期(包括上下文切換),那對于20MIPS的CPU時間來說,僅處理SPI中斷就需要花費15%的CPU時間。如果同時還有其他一系列中斷,則意味著CPU必須處理巨大的任務。
使用中斷方式的另一個劣勢就是中斷響應時間對關鍵系統事件的影響。某些中斷源可能要求在觸發后CPU必須立即響應。比如汽車的安全氣囊、動力設備的急停等危機情況以及緊急情況的應用。所有這些都要求立即相應,或者立即關閉控制系統以防止發生永久性災難事件。如果CPU需要首先完成其他的中斷服務程序或者需要花費較長的時間進行上下文切換,結果將無法預知。
目前,已經有些半導體廠商開發了一些新的技術。這些技術用來取代傳統的中斷方式或者DMA方式,使用這類技術進行外設通信可以節省大量的CPU時間。
c語言相關文章:c語言教程
單片機相關文章:單片機教程
單片機相關文章:單片機視頻教程
單片機相關文章:單片機工作原理
評論