1樓:匿名使用者
說一下個人的理解,
什麼時候用中斷,
一般的微控制器中斷響應時間也就是一個或兩個機器週期這樣,所以如果我們要處理的東西要求時間很嚴格,那就要在中斷服務程式裡來出來,比如常用的傳送或接收非同步通訊資料,傳送接收遙控訊號, 等等. 這個時候就要用中斷來做.
什麼時候用查詢
一般一些處理事件要求時間不是很嚴格的情況下,就可以用查詢來做,比如鍵盤掃描,等等.
你說的例子,有些微控制器,計時中斷後還要重先賦值給計時器counter.那是一定要中斷來做的.
如果你只是想知道計時器是否有中斷髮生而已,那查詢和中斷都可以看到.所以中斷相對查詢而言不是提高效率,而是不同的處理事件要不同的做法來做才可以達到目的.當然如果你要處理的事件很簡單,不會影響到中斷服務程式的正常中斷,那麼在中斷裡處理的話,效率是很提高.
看你說的例子,應該就是某個事件 要求多少時間才處理,但要求的時間準確性不會很高,時間到了,給一個標誌,查詢到標誌了,就去出來這個事件.
2樓:e時代幽默網
微控制器內部由cpu ram flash 以及外圍電路和暫存器之類的東西組成,cpu是由數字邏輯電路構成的,基本數字邏輯閘分為或門 與門 非門,通過這些門可以組成組合電路和時序電路。
查詢方式就是cpu按照時鐘週期一步一步地執行你的程式,由你的程式讀取相應io狀態來判斷事件是否發生,查詢非常佔用cpu的時間,而且速度會受限於時鐘電路(通常是晶振),而中斷方式也就是通過數字邏輯電路方式,外部產生一個脈衝,會觸發數字邏輯電路動作,這通常是一瞬間的,速度僅僅依賴於門延遲,cpu收到中斷請求後,會call中斷服務程式,這通常只消耗1-4個指令週期,時間非常短
微控制器中「查詢」和「中斷」各是什麼意思?有何異同?希望講解通俗易懂。不勝感激~
3樓:匿名使用者
比如你有好幾個手機,都開的靜音,你又有重要**,但不知道會打到那個上面,你只能一會版看看這個手機一權
會看看那個,輪流著看,這就是查詢,如果你開了鈴聲,只要那個鈴聲向你就發下手頭工作去接**,,接完繼續回到原工作就是中斷
微控制器中既然有中斷方式,為什麼還要查詢方式?
4樓:
查詢方式主要由編寫的程式進行查詢狀態來獲取資料的;
中斷方式主要是通過系統本身的硬體機制再通過自己編寫的中斷服務函式做出相應操作的;
兩者主要區別在 實時性 上 中斷處理很及時,只要發生這個時間久會執行對應操作,查詢的話要等到查詢狀態之後才會做出相應操作。中斷的主要優勢在程式較複雜的情況下和對實時性要求高的情況下更明顯。
5樓:老張講科技
中斷不佔用cpu的時間,但數量有限,不能滿足設計要求;查詢可以是幾百個甚至更多,在速度要求很高的情況下就不行了。
6樓:匿名使用者
你不覺得查詢法相比中斷法更簡單嗎?查詢法和中斷法不能和到用撒 或者進入查詢時關掉中斷就好了 查詢法更簡單
51微控制器中斷處理程式中關中斷的問題
中斷保護現場,是為了你中斷子程式執行完以後能夠返回到你程式中中斷點,即產生中斷的地方,使程式能夠繼續向下執行!如過你說的不用保護現場的話,那麼程式執行完以後就不能夠回到現場,那麼你的程式將不知道要跳轉到那裡去了,也就是飛鳥,呵呵 你說的中斷巢狀,也是一樣的,兩者都要保護現場,不然你也不能夠回到現場,...
arm與微控制器的區別,微控制器和ARM區別
arm如果不跑系統的話,也是一個微控制器,如果執行作業系統,處理能力更強! 0427付強 arm是一種處理器核心,它可以被植入微控制器,也可以不使用微控制器來執行。微控制器可以使用arm核心,也可以不使用。 一萬光年 內部架構,時脈頻率,片內資源等方面 微控制器和arm區別 千鋒教育 微控制器學名微...
c51微控制器中斷程式中的interrupt1,2,3是由什麼決定的
中斷是指由於某種事件的發生 硬體或者軟體的 計算機暫停執行當前的程式,轉而執行另一程式,以處理髮生的事件,處理完畢後又返回原程式繼續作業的過程。中斷是處理器一種工作狀態的描述。1 int0 外部中斷0,由p3.2埠引入,低電平或下降沿引起。預設優先順序最高。2 int1 外部中斷1,由p3.3埠引入...