- C51單片機編程與應用
- 孔維功主編
- 7字
- 2018-12-29 14:25:55
1.3 項目相關知識
1.3.1 單片機的基礎知識
單片機自問世以來,以其極高的性能價格比越來越受到人們的重視和關注。目前,單片機被廣泛地應用于智能儀表、機電設備、過程控制、數據處理、自動檢測和家用電器等方面。
1.單片機名稱的由來
無論規模大小、性能高低,計算機的硬件系統都是由運算器、存儲器、輸入設備、輸出設備及控制器等單元組成的。在通用計算機中,這些單元被分成若干塊獨立的芯片,通過電路連接而構成一臺完整的計算機。而單片機技術則將這些單元全部集成到一塊集成電路中,即一塊芯片(芯片外形見圖1-3)就構成一個完整的計算機系統。這成為當時這一類芯片的典型特征,因此,就以Single Chip Microcomputer來稱呼這一類芯片,中文譯為“單片機”,這在當時是唯一準確的表達。但隨著單片機技術的不斷發展,“單片機”已無法確切地表達其內涵,國際上逐漸采用MCU(Micro Controller Unit)來稱呼這一類計算機,并成為單片機界公認的、最終統一的名詞。但國內由于多年來一直使用“單片機”的稱呼,已經約定俗成,所以目前仍采用“單片機”這一名詞。

圖1-3 單片機芯片的外形
2.單片機的技術發展歷史
1)單片機的發展階段
單片機的發展可分為以下4個階段。
(1)第一代:單片機探索階段。主要有通用CPU68xx系列和專用CPUMCS-48系列。(2)第二代:單片機完善階段。表現在:
① 面對對象,突出控制功能,專用CPU滿足嵌入功能。
② 尋址范圍為16位或8位。
③ 規范的總線結構,有8位數據線,16位地址線及多功能異步串行口(UART)。
④ 特殊功能寄存器(SFR)的集中管理模式。
⑤ 海量位地址空間,提供位尋址及位操作功能。
⑥ 指令系統突出控制功能。
(3)第三代:微控制器形成階段。這一階段已形成系列產品:以805l系列為代表,如8031、8032、805l和8052等。
(4)第四代:微控制器百花齊放。表現在:
① 電氣商、半導體商廣泛加入。
② 滿足最低層電子技術的應用(玩具、小家電)。
③ 大力發展專用型單片機。
④ 致力于提高單片機的綜合品質。
2)單片機的發展方向
未來單片機技術的發展趨勢可歸結為以下10個方面。
(1)主流型機發展趨勢。8位單片機為主流,少量32位機,16位機可能被淘汰。
(2)全盤CMOS化趨勢。指在HCMOS基礎上的CMOS化,CMOS速度慢、功耗小,而HCMOS具有低功耗及低功耗管理技術等特點。
(3)RISC體系結構的發展。早期CISC指令較復雜,指令代碼周期數不統一,難以實現流水線(單周期指令僅為1MIPS)。采用RSIC體系結構可以精簡指令系統,使其絕大部分為單周期指令,很容易實現流水線作業(單周期指令速度可達12MIPS)。
(4)大力發展專用單片機。
(5)OTPROM、FlashROM成為主流供應狀態。
(6)ISP及基于ISP的開發環境。FlashROM的應用推動了ISP(系統可編程技術)的發展,這樣就可實現目標程序的串行下載,PC可通過串行電纜對遠程目標高度仿真、更新軟件等。
(7)單片機的軟件嵌入。目前的單片機只提供程序空間,沒有駐機軟件。ROM空間足夠大后,可裝入如平臺軟件、虛擬外設軟件和用于系統診斷管理的軟件等,以提高開發效率。
(8)實現全面功耗管理。例如,采用ID、PD模式、雙時鐘模式、高速時鐘/低速時鐘模式和低電壓節能技術。
(9)推行串行擴展總線,如I2C總線等。
(10)ASMIC技術的發展,如以MCU為核心的專用集成電路(ASIC)。
3.單片機的應用模式
1)單片機應用系統的結構
單片機應用系統的結構分為以下3個層次。
(1)單片機:通常指應用系統的主處理機,即所選擇的單片機器件。
(2)單片機系統:指按照單片機的技術要求和嵌入對象的資源要求而構成的基本系統,如時鐘電路、復位電路和擴展存儲器等與單片機構成了單片機系統。
(3)單片機應用系統:指能滿足嵌入對象要求的全部電路系統。在單片機系統的基礎上加上面向對象的接口電路,如前向通道、后向通道、人機交互通道(鍵盤、顯示器、打印機等)和串行通信口(RS232)及應用程序等。
單片機應用系統3個層次的關系如圖1-4所示。

圖1-4 單片機應用系統3個層次的關系
2)單片機的種類
單片機可按應用領域、通用性和總線結構分類。
(1)按應用領域可分為:家電類、工控類、通信類和個人信息終端等。
(2)按通用性可分為:通用型和專用型(如計費率電表、電子記事簿)。
(3)按總線結構可分為:總線型和非總線型。例如,89C51 為總線型,有數據總線、地址總線及相應的控制線(WR、RD、EA、ALE 等);89C2051 為非總線型,其外部引腳少,可使成本下降。
3)單片機的供應狀態
單片機按提供的存儲器類型可分為以下5種。
(1)MASKROM類:程序在芯片封裝過程中用掩膜工藝制作到ROM區中,如80C51,適合大批生產。
(2)EPROM類:紫外線可擦寫存儲器類,如87C51,價格較貴。
(3)ROMless類:無ROM存儲器,如80C31,電路擴展復雜,較少用。
(4)OTPROM類:可一次性寫入程序。
(5)FlashROM(MTPROM)類:可多次編程寫入的存儲器,如89C51、89C52,其成本低,開發調試方便,在惡劣環境下可靠性不及OTPROM。
4)單片機的應用模式
單片機應用模式的分類如圖1-5所示。各應用模式的結構如圖1-6~圖1-9所示。

圖1-5 單片機應用模式的分類

圖1-6 總線應用模式

圖1-7 非總線應用模式

圖1-8 總線型的非總線應用模式

圖1-9 專用型的應用模式
4.單片機的應用開發過程
單片機的應用開發可分為以下5個過程。
(1)硬件系統設計調試。如電路設計、PCB印制板繪制等。
(2)應用程序的設計。可使用如Wave、Keil等匯編工具軟件進行源程序編寫、編譯調試等。
(3)應用程序的仿真調試。用仿真器對硬件進行在線調試或軟件仿真調試,在調試中不斷修改、完善硬件及軟件。
(4)單片機應用程序的燒寫。用專用的單片機燒寫器可將編譯過的二進制源程序文件寫入單片機(FlashROM)芯片內。
(5)系統脫機運行檢查。進行全面檢查,針對出現的問題修正硬件、軟件或總體設計方案。
5.單片機的具體型號
MCS-51是指由美國Intel公司生產的一系列單片機的總稱,這一系列單片機包括了多個種類,如803l、8051、8751、8032、8052和8752等,其中8051是最早、最典型的產品。該系列其他單片機都是在 8051 的基礎上進行功能的增、減改變而來的,所以人們習慣用 8051來稱呼MCS-51系列單片機。Intel公司將MCS-51的核心技術授權給了很多其他公司,所以有很多公司在開發以8051為核心的單片機。
由于單片機的種類很多,在選擇單片機時要依據實際設計要求選擇合適的單片機。例如,當設計僅需要一個單片機定時器時,可選擇89C1051或89C2051即可,而不需要選擇89C51或 89C52,因為后者比前者貴了一倍。當然,如果程序和數據區的要求較高,那么選擇的單片機還要能滿足程序空間的要求。表1-1所示為常用的51單片機的內部資源。
表1-1 MCS-51系列(8位)單片機的內部資源表

51系列單片機除了上述常用的種類外,還有一些功能增強型的系列,例如,內置A/D型、存儲器增大型等。芯片的資源如表1-2所示。
表1-2 更強功能的MCS-51系列(8位)單片機的內部資源表

除了常用的51系列單片機外,還有一些其他的單片機系列,這些單片機和51系列單片機不兼容,程序指令也不相同,如摩托羅拉、PIC等系列的單片機。常用的PIC單片機如表1-3所示。
表1-3 常用PIC單片機系列(8位)單片機的內部資源表

注意:本書主要介紹目前較為流行的5l系列單片機,而在51系列單片機中尤以89C51為典型,因此,在今后各例中均以這個型號為主介紹。
- Microsoft Power BI Quick Start Guide
- TIBCO Spotfire:A Comprehensive Primer(Second Edition)
- PyTorch深度學習實戰
- Docker High Performance(Second Edition)
- 具比例時滯遞歸神經網絡的穩定性及其仿真與應用
- 嵌入式操作系統
- 愛犯錯的智能體
- Deep Reinforcement Learning Hands-On
- 電腦日常使用與維護322問
- 嵌入式操作系統原理及應用
- 從零開始學JavaScript
- 工業機器人集成應用
- Hands-On Business Intelligence with Qlik Sense
- Oracle 11g Anti-hacker's Cookbook
- Linux常用命令簡明手冊