發布日期:2022-07-14 點擊率:42
微控制器的工作過程就是執行程序的過程,程序由指令序列組成,因此程序的執行過程就是執行指令序列的過程,也就是周而復始地進行取指令、執行指令的過程。
微控制器在開始執行程序時,必須由人工通過微控制器的外部輸入設備(如鍵輸入操作)給微控制器具體的操作要求,例如打開機器電源開關或按下某一功能鍵,微控制就能得到一個指令操作碼。這一指令操作碼被取到控制器內,因而控制器發了相應的控制信號。而在執行指令階段,由于不同指令的功能不同,要求機器執行的操作也不同,因而控制器發出的控制信號也隨之不同。
1.程序順序執行過程
在程序執行前,微控制器先復位,程序計數器(PC)便清零,即初值為零,程序執行時便從零地址開始。如果需要程序從中間某一給定的地址開始執行時,先將該確定的地址賦給程序計數器(PC)作為初值,程序便能從該地址開始執行。無論是程序的哪一種執行,在程序計數器(PC)的PC值送出后程序計數器(PC)就自動加l,為下次送出下一個PC值作好了準備,從而順序地從只讀存儲器(ROM)中讀取指令,這是程序的順序執行。
2.中斷
中斷是一項重要的計算機技術,這一技術在微控制器中得到了充分繼承。其實,中斷現象不僅在控制器中存在,就是在我們的日常生活中也同樣存在,請看下例:
你在看書~電話鈴響了~你在書上做個記號,走到電話旁~你拿起電話和對方通話~門鈴響了~你讓打電話的對方稍等一下~你去開門,并在門旁與來訪者交談~談話結束,關好門~回到電話機旁,拿起電話,繼續通話~通話完畢,掛上電話~從作記號的地方起繼續讀書。
這是一個很典型的中斷現象。從看書到接電話,是一次中斷過程,而從打電話到與門外來訪者交談,則是在中斷過程中發生的又一次中斷,即所謂中斷嵌套。為什么會發生上述的中斷現象呢?就是因為你在一個特定的時刻,面對著三項任務:看書、打電話和接待來訪者。但一個人又不可能同時完成三項任務,因此你只好采用中斷方法,穿插著去做。
此種現象同樣也可能出現在微控制器中,因為通常微控制器中只有一個CPU,但在運行程序過程中可能會出現諸如數據輸入、數據輸出或特殊情況處理等其他的事情要CPU去完成,對此,CPU也只能采用停下一個任務去處理另一任務的中斷方法解決。
中斷技術在微控制器中得到了廣泛的應用。中斷技術能實現CPU與外部設備的并行工作,提高CPU的利用率以及數據的輸入/輸出效率;中斷技術也能對微控制器運行過程中突然發生的故障做到及時發現并進行自動處理,例如:硬件故障、運算錯誤及程序故障等。
在微控制器中,中斷技術還廣泛用于實時控制,所謂實時控制,就是要求微控制器能及時地響應被控對象提出的分析、計算和控制等請求,使被控對象保持在最佳工作狀態或達到預定的控制效果。例如,DVD在正常播放過程中,微控制器在執行有關正常播放的程序(這里稱為主程序),現要求快速向前搜索,此時微控制器在外部按鍵操作控制下中斷原先播放程序,進入快速向前搜索程序。
下一篇: PLC、DCS、FCS三大控
上一篇: 怎樣解決電磁流量計信