單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了 I/O 設(shè)備。概括的講:一塊芯片就成了一臺計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。
單片機(jī)中主要包含 CPU、只讀存儲器 ROM 和隨機(jī)存儲器 RAM 等,多樣化數(shù)據(jù)采集與控制系統(tǒng)能夠讓單片機(jī)完成各項(xiàng)復(fù)雜的運(yùn)算,無論是對運(yùn)算符號進(jìn)行控制,還是對系統(tǒng)下達(dá)運(yùn)算指令都能通過單片機(jī)完成。由此可見,單片機(jī)憑借著強(qiáng)大的數(shù)據(jù)處理技術(shù)和計(jì)算功能可以在智能電子設(shè)備中充分應(yīng)用。目前,單片機(jī)被廣泛應(yīng)用在智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器中。
單片機(jī)的基本結(jié)構(gòu)
運(yùn)算器
運(yùn)算器由運(yùn)算部件――算術(shù)邏輯單元(Arithmetic & Logical Unit,簡稱 ALU)、累加器和寄存器等幾部分組成。ALU 的作用是把傳來的數(shù)據(jù)進(jìn)行算術(shù)或邏輯運(yùn)算,輸入來源為兩個(gè) 8 位數(shù)據(jù),分別來自累加器和數(shù)據(jù)寄存器。ALU 能完成對這兩個(gè)數(shù)據(jù)進(jìn)行加、減、與、或、比較大小等操作,最后將結(jié)果存入累加器。
運(yùn)算器有兩個(gè)功能:
(1) 執(zhí)行各種算術(shù)運(yùn)算。
(2) 執(zhí)行各種邏輯運(yùn)算,并進(jìn)行邏輯測試,如零值測試或兩個(gè)值的比較。
運(yùn)算器所執(zhí)行全部操作都是由控制器發(fā)出的控制信號來指揮的,并且,一個(gè)算術(shù)操作產(chǎn)生一個(gè)運(yùn)算結(jié)果,一個(gè)邏輯操作產(chǎn)生一個(gè)判決。
控制器
控制器由程序計(jì)數(shù)器、指令寄存器、指令譯碼器、時(shí)序發(fā)生器和操作控制器等組成,是發(fā)布命令的“決策機(jī)構(gòu)”,即協(xié)調(diào)和指揮整個(gè)微機(jī)系統(tǒng)的操作。其主要功能有:
(1) 從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的位置。
(2) 對指令進(jìn)行譯碼和測試,并產(chǎn)生相應(yīng)的操作控制信號,以便于執(zhí)行規(guī)定的動作。
(3) 指揮并控制 CPU、內(nèi)存和輸入輸出設(shè)備之間數(shù)據(jù)流動的方向。
微處理器內(nèi)通過內(nèi)部總線把 ALU、計(jì)數(shù)器、寄存器和控制部分互聯(lián),并通過外部總線與外部的存儲器、輸入輸出接口電路聯(lián)接。外部總線又稱為系統(tǒng)總線,分為數(shù)據(jù)總線 DB、地址總線 AB 和控制總線 CB。通過輸入輸出接口電路,實(shí)現(xiàn)與各種外圍設(shè)備連接。
主要寄存器
(1)累加器 A
累加器 A 是微處理器中使用最頻繁的寄存器。在算術(shù)和邏輯運(yùn)算時(shí)它有雙功能:運(yùn)算前,用于保存一個(gè)操作數(shù);運(yùn)算后,用于保存所得的和、差或邏輯運(yùn)算結(jié)果。
(2)數(shù)據(jù)寄存器 DR
數(shù)據(jù)寄存器通過數(shù)據(jù)總線向存儲器和輸入/輸出設(shè)備送(寫)或取(讀)數(shù)據(jù)的暫存單元。它可以保存一條正在譯碼的指令,也可以保存正在送往存儲器中存儲的一個(gè)數(shù)據(jù)字節(jié)等等。
(3)指令寄存器 IR 和指令譯碼器 ID
指令包括操作碼和操作數(shù)。
指令寄存器是用來保存當(dāng)前正在執(zhí)行的一條指令。當(dāng)執(zhí)行一條指令時(shí),先把它從內(nèi)存中取到數(shù)據(jù)寄存器中,然后再傳送到指令寄存器。當(dāng)系統(tǒng)執(zhí)行給定的指令時(shí),必須對操作碼進(jìn)行譯碼,以確定所要求的操作,指令譯碼器就是負(fù)責(zé)這項(xiàng)工作的。其中,指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。
(4)程序計(jì)數(shù)器 PC
PC 用于確定下一條指令的地址,以保證程序能夠連續(xù)地執(zhí)行下去,因此通常又被稱為指令地址計(jì)數(shù)器。在程序開始執(zhí)行前必須將程序的第一條指令的內(nèi)存單元地址(即程序的首地址)送入 PC,使它總是指向下一條要執(zhí)行指令的地址。
(5)地址寄存器 AR
地址寄存器用于保存當(dāng)前 CPU 所要訪問的內(nèi)存單元或 I/O 設(shè)備的地址。由于內(nèi)存與 CPU 之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內(nèi)存讀/寫操作完成為止。
顯然,當(dāng) CPU 向存儲器存數(shù)據(jù)、CPU 從內(nèi)存取數(shù)據(jù)和 CPU 從內(nèi)存讀出指令時(shí),都要用到地址寄存器和數(shù)據(jù)寄存器。同樣,如果把外圍設(shè)備的地址作為內(nèi)存地址單元來看的話,那么當(dāng) CPU 和外圍設(shè)備交換信息時(shí),也需要用到地址寄存器和數(shù)據(jù)寄存器。
單片機(jī)的發(fā)展史
1971 年,intel 公司研制出世界上第一個(gè) 4 位的微處理器;Intel 公司的霍夫研制成功世界上第一塊 4 位微處理器芯片 Intel 4004,標(biāo)志著第一代微處理器問世,微處理器和微機(jī)時(shí)代從此開始。因發(fā)明微處理器,霍夫被英國《經(jīng)濟(jì)學(xué)家》雜志列為“二戰(zhàn)以來最有影響力的 7 位科學(xué)家”之一 。
1971 年 11 月,Intel 推出 MCS-4 微型計(jì)算機(jī)系統(tǒng)(包括 4001 ROM 芯片、4002 RAM 芯片、4003 移位寄存器芯片和 4004 微處理器 )其中 4004(下圖)包含 2300 個(gè)晶體管,尺寸規(guī)格為 3mm×4mm,計(jì)算性能遠(yuǎn)遠(yuǎn)超過當(dāng)年的 ENIAC,最初售價(jià)為 200 美元。
1972 年 4 月,霍夫等人開發(fā)出第一個(gè) 8 位微處理器 Intel 8008。由于 8008 采用的是 P 溝道 MOS 微處理器,因此仍屬第一代微處理器。
1973 年,intel 公司研制出 8 位的微處理器 8080;1973 年 8 月,霍夫等人研制出 8 位微處理器 Intel 8080,以 N 溝道 MOS 電路取代了 P 溝道,第二代微處理器就此誕生。主頻 2MHz 的 8080 芯片運(yùn)算速度比 8008 快 10 倍,可存取 64KB 存儲器,使用了基于 6 微米技術(shù)的 6000 個(gè)晶體管,處理速度為 0.64MIPS(Million Instructions Per Second )。
1975 年 4 月,MITS 發(fā)布第一個(gè)通用型 Altair 8800,售價(jià) 375 美元,帶有 1KB 存儲器。這是世界上第一臺微型計(jì)算機(jī)。
1976 年 intel 公司研制出 MCS-48 系列 8 位的單片機(jī),這也是單片機(jī)的問世。Zilog 公司于 1976 年開發(fā)的 Z80 微處理器,廣泛用于微型計(jì)算機(jī)和工業(yè)自動控制設(shè)備。當(dāng)時(shí),Zilog、Motorola 和 Intel 在微處理器領(lǐng)域三足鼎立。
20 世紀(jì) 80 年代初,Intel 公司在 MCS-48 系列單片機(jī)的基礎(chǔ)上,推出了 MCS-51 系列 8 位高檔單片機(jī)。MCS-51 系列單片機(jī)無論是片內(nèi) RAM 容量,I/O 口功能,系統(tǒng)擴(kuò)展方面都有了很大的提高。
審核編輯:湯梓紅
-
微控制器
+關(guān)注
關(guān)注
48文章
7490瀏覽量
151061 -
單片機(jī)
+關(guān)注
關(guān)注
6032文章
44521瀏覽量
633114 -
mcu
+關(guān)注
關(guān)注
146文章
17002瀏覽量
350332 -
寄存器
+關(guān)注
關(guān)注
31文章
5322瀏覽量
120021
發(fā)布評論請先 登錄
相關(guān)推薦
評論