官术网_书友最值得收藏!

1.5 單片機的工作過程

1.單片機的工作過程

單片機的工作過程實質上是執行用戶編制程序的過程,一般程序的機器碼都已固化到存儲器中,因此開機復位后,就可以執行指令。執行指令又是取指令和執行指令的周而復始的過程。

假設指令MOV A,#08H機器碼74H、08H已存在0000H開始的單元中,表示把08H這個值送入A累加器。下面我們來說明單片機的工作過程。

接通電源開機后,PC=0000H,取指令過程如下:

1)PC中的0000H送到片內的地址寄存器。

2)PC的內容自動加1變為0001H指向下一個指令字節。

3)地址寄存器中的內容0000H通過地址總線送到存儲器,經存儲器中的地址譯碼選中0000H單元。

4)CPU通過控制總線發出讀命令。

5)被選中單元的內容74H送到內部數據總線上,該內容通過內部數據總線送到單片機內部的指令寄存器。到此取指令過程結束,進入執行指令過程。

執行指令的過程:

1)指令寄存器中的內容經指令譯碼器譯碼后,說明這條指令是取數命令,即把一個立即數送入A中。

2)PC的內容為0001H送地址寄存器,譯碼后選中0001H單元,同時PC的內容自動加1變為0002H。

3)CPU同樣通過控制總線發出讀命令。

4)0001H單元的內容08H讀出經內部數據總線送至A,至此本指令執行結束。PC=0002H,機器又進入下一條指令的取指令過程。一直重復上述過程直到程序中的所有指令執行完畢,這就是單片機的基本工作過程。

2.ECU的工作原理

ECU(Electronic Control Unit)為“電子控制單元”縮寫,俗稱汽車電腦。其基本構成如圖1-16所示。ECU的主要工作是按照特定的程序對輸入信號進行處理,并形成相應的控制指令,向執行器輸出驅動信號。由圖可知,它由輸入信號處理電路、輸出信號電路和微機系統構成。ECU的主要工作過程由微處理器進行,而微處理器是通過讀取系統指令進行工作的。在存儲器的特定區段中存儲著指令和數據,其中存放著處理器下一指令所在地址的寄存器稱為程序計數器,用于臨時存放從存儲器中讀出指令的寄存器稱為指令寄存器。

圖1-16 汽車電子控制單元(ECU)的基本構成

微處理器工作是根據程序計數器中的地址將指令讀入指令寄存器中,然后對指令進行翻譯,而程序計數器則存儲下一條指令所在的地址。微處理器在獲得執行該指令所必需的信息以后,將執行該指令所定義的過程,指令定義的過程主要包括對數據進行存儲、運算、邏輯判斷和函數轉換等。當一條指令執行結束以后,微處理器將重復進行確定指令存儲器地址、讀取指令、解譯指令和執行指令這一循環過程,執行下一條指令,直到程序中的全部指令執行完畢。為了改善程序的結構,程序中往往會包含一些子程序,每個子程序用于實現一個特定的功能,主程序需要調用子程序時,將有一條指令使程序計數器設置為子程序第一條程序所在的地址,然后微處理器將運行該子程序,當子程序運行結束時,子程序的最后一條指令又使微處理器返回到當初離開主程序的位置。

微處理器的另一個重要工作是對來自輸入、輸出和反饋電路的優先信號做出反應,當這些優先信號輸入微處理器時,微處理器將停止正在進行的工作,轉向運行處理這些優先信號的子程序,這一過程稱為中斷服務,這些需要優先處理的信號稱為中斷信號。中斷服務功能可以使微處理器不必對控制系統進行連續監測,又可以在進行其他控制過程中按照需要對中斷信號進行處理,使處理這些信號的時效性得到保證。例如,發動機點火過于提前導致爆燃發生時,由爆燃傳感器反饋的爆燃信號將使微處理器中斷正在進行的工作,而轉向運行延遲點火正時的子程序,使爆燃燃燒得到抑制。

主站蜘蛛池模板: 巩义市| 开江县| 秦安县| 疏勒县| 即墨市| 连山| 巴林右旗| 文成县| 梧州市| 中宁县| 绥江县| 喀喇| 达拉特旗| 张家港市| 永泰县| 邹城市| 昭通市| 乐陵市| 邢台市| 沂源县| 黄大仙区| 江孜县| 汶上县| 巴楚县| 玉山县| 游戏| 浮山县| 岳普湖县| 楚雄市| 达孜县| 彭泽县| 高阳县| 罗源县| 绥江县| 深圳市| 泰宁县| 巫山县| 怀仁县| 通城县| 思茅市| 临泉县|