導語:單片機也被稱為單片微控器,屬于一種集成式電路芯片。在單片機中主要包含CPU、只讀存儲器ROM和隨機存儲器RAM等,相當于一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。多樣化數據采集與控制系統能夠讓單片機完成各項復雜的運算,無論是對運算符號進行控制,還是對系統下達運算指令都能通過單片機完成。單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。下文會詳細介紹什么是單片機,包括其特點、組成部分、工作原理、基本結構、分類等。
丨什么是單片機
單片機(Single-Chip Microcomputer)是一種集成電路芯片,是采用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊硅片上構成的一個小而完善的微型計算機系統。
概括地講:一塊芯片就成了一臺計算機。它的體積小、質量輕、價格便宜、為應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。
丨單片機的特點
1.具有優異的性價比
單片機的這種高性能、低價格是它最顯著的一個特點。單片機可以盡可能的應用所需要的存儲器,各種功能的I/O口都集成在一個芯片內,使之成為名副其實的單片機。有的單片機為了提高速度和執行效率,開始采用了RISC流水線和DSP的技術。使單片機的性能明顯的優于同性能的微處理器,有的單片機ROM可達64KB,片內可達2KB,單片機的尋址已突破64KB的限制,八位和十六位單片機尋址可達1MB和16MB。
單片機的另一個顯著的特點是量大面廣,因為世界上各大公司在提高單片機性能的同時,進一步降低價格,性能/價格之比是各個公司競爭的主要策略。
2.集成度高、體積小、可靠性高?
單片機把各個功能部件都集成在一塊芯片上,內部采用總線結構,減少了各芯片之間的連接,大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于強磁場環境易于采取屏蔽措施,適合在惡劣的環境下工作。
3.控制功能強
單片機是電子計算機這個龐大家庭的一個特殊產品,體積雖小,但“五臟俱全”,它非常適合用于專門的控制用途。為了滿足工業控制的要求,一般單片機的指令系統中有極其豐富的轉移指令,I/O口的邏輯操作以及為處理器功能。單片機的邏輯控制功能及運行速度均高于同一檔次的微型計算機。
4.低電壓、低功耗
單片機大量應用于便攜式產品和家用消費產品,低電壓和低功耗的特點尤為重要。許多單片機已可以在2.3.V的電壓下運行,有的已突破1.2V或0.9V下工作;功耗至微安級,一個紐扣電池就可以使其長期使用。?
丨單片機的分類
單片機(Microcontrollers)作為計算機發展的一個重要分支領域,根據發展情況,從不同角度,單片機大致可以分為通用型/專用型、總線型/非總線型及工控型/家電型。
(1)通用型
這是按單片機(Microcontrollers)適用范圍來區分的。例如,80C51式通用型單片機,它不是為某種專門用途設計的;專用型單片機是針對一類產品甚至某一個產品設計生產的,例如為了滿足電子體溫計的要求,在片內集成ADC接口等功能的溫度測量控制電路。
(2)總線型
這是按單片機(Microcontrollers)是否提供并行總線來區分的。總線型單片機普遍設置有并行地址總線、 數據總線、控制總線,這些引腳用以擴展并行外圍器件都可通過串行口與單片機連接,另外,許多單片機已把所需要的外圍器件及外設接口集成一片內,因此在許多情況下可以不要并行擴展總線,大大減少封裝成本和芯片體積,這類單片機稱為非總線型單片機。
(3)控制型
這是按照單片機(Microcontrollers)大致應用的領域進行區分的。一般而言,工控型尋址范圍大,運算能力強;用于家電的單片機多為專用型,通常是小封裝、低價格,外圍器件和外設接口集成度高。顯然,上述分類并不是唯一的和嚴格的。例如,80C51類單片機既是通用型又是總線型,還可以作工控用。
丨單片機的組成
單片機的組成部分包括:中央處理器(CPU)、程序存儲器(ROM)、隨機存儲器(RAM)、I/O設備。
中央處理器是單片機的核心單元,通常由算術邏輯運算部件(ALU)和控制部件構成。CPU就像人的大腦一樣,決定了單片機的運算才能和處理速度。
ROM拿來寄存用戶程序,分為EPROM、Mask ROM、OTP ROM和Flash ROM等。我們的ROM一般情況來說能夠反復運用,而且掉電內容也還在。
RAM拿來寄存程序運行時的工作變量和數據,由于RAM的制作工藝復雜,價格比ROM高得多,所以單片機的內部RAM非常寶貴,通常僅有幾十到幾百字節。RAM的內容具有易失性(也稱為易揮發性),掉電后數據會丟失。
I/O口就是與外圍設備連接,進行數據傳輸或者控制。
丨單片機的基本結構介紹
1.運算器
運算器由運算部件—算術邏輯單元(Arithmetic & Logical Unit,簡稱ALU)、累加器和寄存器等幾部分組成。ALU的作用是把傳來的數據進行算術或邏輯運算,輸入來源為兩個8位數據,分別來自累加器和數據寄存器。ALU能完成對這兩個數據進行加、減、與、或、比較大小等操作,最后將結果存入累加器。例如,兩個數6和7相加,在相加之前,操作數6放在累加器中,7放在數據寄存器中,當執行加法指令時,ALU即把兩個數相加并把結果13存入累加器,取代累加器原來的內容6。
運算器有兩個功能:
(1) 執行各種算術運算。
(2) 執行各種邏輯運算,并進行邏輯測試,如零值測試或兩個值的比較。
運算器所執行全部操作都是由控制器發出的控制信號來指揮的,并且,一個算術操作產生一個運算結果,一個邏輯操作產生一個判決。
2.控制器
控制器由程序計數器、指令寄存器、指令譯碼器、時序發生器和操作控制器等組成,是發布命令的“決策機構”,即協調和指揮整個微機系統的操作。其主要功能有:
(1) 從內存中取出一條指令,并指出下一條指令在內存中的位置;
(2) 對指令進行譯碼和測試,并產生相應的操作控制信號,以便執行規定的動作;
(3) 指揮并控制CPU、內存和輸入輸出設備之間數據流動的方向。
微處理器內通過內部總線把ALU、計數器、寄存器和控制部分互聯,并通過外部總線與外部的存儲器、輸入輸出接口電路聯接。外部總線又稱為系統總線,分為數據總線DB、地址總線AB和控制總線CB。通過輸入輸出接口電路,實現與各種外圍設備連接。
3.主要寄存器
(1)累加器A
累加器A是微處理器中使用最頻繁的寄存器。在算術和邏輯運算時它有雙功能:運算前,用于保存一個操作數;運算后,用于保存所得的和、差或邏輯運算結果。
(2)數據寄存器DR
數據寄存器通過數據總線向存儲器和輸入/輸出設備送(寫)或取(讀)數據的暫存單元。它可以保存一條正在譯碼的指令,也可以保存正在送往存儲器中存儲的一個數據字節等等。
(3)指令寄存器IR和指令譯碼器ID
指令包括操作碼和操作數。指令寄存器是用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存中取到數據寄存器中,然后再傳送到指令寄存器。當系統執行給定的指令時,必須對操作碼進行譯碼,以確定所要求的操作,指令譯碼器就是負責這項工作的。其中,指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。
(4)程序計數器PC
PC用于確定下一條指令的地址,以保證程序能夠連續地執行下去,因此通常又被稱為指令地址計數器。在程序開始執行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執行指令的地址。
(5)地址寄存器AR
地址寄存器用于保存當前CPU所要訪問的內存單元或I/O設備的地址。由于內存與CPU之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內存讀/寫操作完成為止。
顯然,當CPU向存儲器存數據、CPU從內存取數據和CPU從內存讀出指令時,都要用到地址寄存器和數據寄存器。同樣,如果把外圍設備的地址作為內存地址單元來看的話,那么當CPU和外圍設備交換信息時,也需要用到地址寄存器和數據寄存器。
丨單片機的工作原理
統一的時鐘節拍
(1)這里有一個概念叫:同步。同步就是好多個獨立的部分按照同一個節奏步調來動,以此來實現一個配合;
(2)和同步相對的一個概念叫異步,異步就是各自干各自的;
(3)單片機的各個模塊之間是同步工作的,CPU和存儲器和IO和單片機中其他東西這些模塊之間通過一個統一的節拍來同步工作,這個統一節拍就是單片機的時鐘;
(4)這個時鐘節拍對單片機很重要,單片機內部在一個時鐘節拍中只能做一件事情。所以單片機要發生一些變化或者做一些事情,最小的時間單位就是1個時鐘節拍。單片機的時間單位都是時鐘節拍的整數倍;
(5)單片機中的CPU、存儲器、IO等都是以時鐘節拍為動作節拍的,所以單片機是一個同步系統;
(6)時鐘周期的長度(時鐘節拍的快慢)影響了單片機的速度,所以這個時鐘就叫做單片機的主頻。主頻越高性能越高,一般PC的主頻都是2G多3G多,51單片機的主頻MHz級別。一般手機CPU的主頻也在1G-2G左右。一般高級單片機如STM32的主頻在百MHz級別。
-
單片機
+關注
關注
6037文章
44563瀏覽量
635866
發布評論請先 登錄
相關推薦
評論