《單片機原理及接口技術》以陜西省高職高專精品課程“單片機原理及應用”為背景,充分考慮高職特色及專科層次,突出了應用技術的特點。在講述具體內容時,以MCS-51系列8位單片機為基礎,使學生認識單片機的基本結構及工作原理。當結合到實際應用介紹時,則以目前市場上流行的MCS-51系列單片機兼容產品作為控制核心,以保證內容的新穎性和先進性。目前,單片機產品經多年的發展已在單個芯片上基本實現了完整功能,因此開發與外部功能部件配合的接口已成為開發單片機的主要任務,《高職高專電子信息類“十一五”規劃教材:單片機原理及接口技術》為此分配了適當的篇幅。
為了全面掌握單片機技術,書中將采用“復雜指令集”的MCS-51系列單片機同采用“精簡指令集”的PIC單片機進行對比介紹,以便在實踐中針對不同的用途有更靈活、有效的處置方法。
另外,在《高職高專電子信息類“十一五”規劃教材:單片機原理及接口技術》中有一定數量的應用實例,通過對這些實例的分析、研究可以使學習更貼近于實踐、更方便于應用。
《高職高專電子信息類“十一五”規劃教材:單片機原理及接口技術》適合作為高職高專電類專業的教材,也可供從事嵌入式控制技術工作的工程技術人員作為參考資料《高職高專電子信息類“十一五”規劃教材:單片機原理及接口技術》參考學時為64學時。
單片機(單片微型計算機)作為計算機技術的一個重要分支,近年來在性能、產量及制造技術上都取得了長足的發展。作為嵌入式控制器件,單片機被廣泛應用于工業智能化儀器、家用電器、醫療設備、汽車電子裝置、信息和通信設備、辦公自動化設備等產品之中,在工業、農業、商業、國防等領域幾乎無處不見。單片機具有其他類型計算機所不具備的一系列優點,即體積小、價格廉及面向控制,特別是在一個芯片上同時集成模擬、數字等外設形成片上系統(SOC),使其功能更加強大,更具發展前景。
用于控制領域的單片機就其處理數據能力而言,從4位機到16位機,乃至近幾年開發出的32位機,產品覆蓋了不同的用途和需求。但其中8位單片機已能滿足多數控制場合的要求,在今后相當長的時間內仍是嵌入式控制的主力。在8位單片機產品中以Intel公司的MCS一51系列為背景的單片機在我國流行最廣。加之其參考資料豐富、實驗設備成熟及應用實例廣泛等優勢,非常有利于單片機的學習。特別是近些年采用MCS一51系列80C51內核發展起來的兼容單片機產品,其工藝得到改進,性能獲得提高,使。MCS一51系列單片機仍不失其先進性和實用性。所以本書以MCS一51系列單片機作為主要內容,對單片機的內部結構、指令系統、匯編語言程序設計、中斷系統與定時器、串行口及單片機擴展與接口技術分別予以系統介紹,力爭通過相關章節的學習,使讀者掌握單片機的基礎知識,具備單片機的基本應用技能。
目前使用的單片機種類繁多、各具特色、各有所長,適當了解一些其他類型的單片機知識并進行對照比較,對于加深理解學習內容和開拓實際應用思路不無幫助。為此,本書在部分章節加入了市場份額較高、應用比較廣泛的Microchip公司PIC系列單片機的內容。這種單片機在結構、指令等方面的特點相對比較突出。
考慮到單片機控制產品開發應用中的一些實際情況和特點,為應付變化迅速的商品市場,開發周期往往是一個重要的瓶頸。通常教材上僅介紹的匯編語言編程已不能滿足實際需求,解決的辦法是使用高級語言。為此,在本書末加入了“C51”程序設計內容簡介。
劉雨棣,男,1957年11月出生,1982年7月畢業于西安礦業學院機電系電氣自動化專業,1989年在日本筑波市日本住友重機械公司筑波輻照中心參加美國RD1公司電子加速器培訓進修。現任西安航專電氣工程系副主任、教授,主要研究方向為檢測技術和系統集成控制。2007年榮獲“第三屆全國高等學校教學名師獎”和“第三屆陜西省高等學校教學名師獎”。
劉雨棣老師長期從事《自動檢測技術》、《過程控制》、《單片機原理及應用》、《現場總線技術》等課程教學工作。在教學中注重突出高職教育特色,依據課程的內容和要求,靈活運用師生互動、多媒體教學等多種手段。在“現場總線技術”、“過程控制”、“單片機應用技術”等課程的教學中采用案例教學法,將課本內容有機地與實踐相結合,使本來枯燥的理論知識變得有趣生動,注重培養了學生的實踐動手能力和創新精神,多次被學生評為最滿意教師。
近年來他結合教學科研工作,在核心期刊上發表相關專業學術論文10余篇,編寫以培養應用型人才為主線的高職高專教材2本(重慶大學出版社出版的《電力電子技術》、西安電子科技大學出版社出版的《電力電子技術及應用》)。曾獲得西安冶金機電局優秀科技工作者稱號和多次學校教學優秀獎。獨立指導學生參加全國大學生電子設計競賽獲二、三等獎各2項,指導大學生挑戰杯電子競賽獲二等獎1項,三等獎2項。
劉雨棣老師不僅熱愛自己的教學工作,還積極承擔了校級、省級立項的科研工作,并參與了多項重點項目的建設工作。在近年來的科研工作中,劉雨棣老師榮獲陜西省科學技術二等獎1項、寧夏自治區科技進步三等獎1項、陜西省優秀專利二等獎1項。獨自或合作獲得國家專利13項,其中發明專利1項,現已全部投入使用并產生了良好的社會和經濟效益。
第1章 概述
1.1 單片機的概念及單片機的種類
1.1.1 單片機及單片機系統
1.1.2 單片機程序設計語言及開發環境簡介
1.1.3 單片機的使用環境及產品等級
1.2 單片機的類型.特點及用途
1.2.1 單片機主要類型及其特點
1.2.2 常用單片機的應用領域
1.3 單片機的發展趨勢
本章小結
練習與思考題
第2章 MCS-51單片機芯片的結構及原理
2.1 MCS-51單片機基本結構與封裝
2.1.1 MCS-51單片機的基本結構與內部結構
2.1.2 MCS-51單片機引腳分布及功能
2.2 MCS-51單片機的存儲器
2.2.1 MCS-51單片機的程序存儲器
2.2.2 MCS-51單片機的數據存儲器
2.3 MCS-51單片機I/O口電路
2.3.1 MCS-51單片機I/O口的硬件結構
2.3.2 MCS-51單片機I/O口的使用特點
2.4 MCS-51單片機的時鐘電路與工作時序
2.4.1 單片機時鐘電路
2.4.2 指令執行與時序
2.5 MCS-51單片機工作方式
2.5.1 復位方式與復位電路
2.5.2 程序執行方式及掉電保護
2.5.3 單片機的低功耗運行模式
2.6 其他單片機的對照描述
2.6.1 PIC系列單片機的主要特點
2.6.2 典型PIC系列單片機的基本性能
本章小結
練習與思考題
第3章 單片機的指令系統及功能對照
3.1 MCS-51單片機的指令系統
3.1.1 MCS-51單片機的指令格式
3.1.2 MCS-51單片機的尋址方式
3.2 MCS-51單片機指令功能分類
3.2.1 數據傳送類指令
3.2.2 算術運算類指令
3.2.3 邏輯運算及移位類指令
3.2.4 控制轉移類指令
3.2.5 布爾操作類指令
3.3 精簡指令單片機指令系統簡介
3.3.1 PIC系列單片機精簡指令集及其說明
3.3.2 PIC指令系統簡介
本章小結
練習與思考題
第4章 MCS-51單片機匯編程序設計
4.1 匯編語言程序設計概述
4.1.1 匯編語言以及匯編語言程序設計特點
4.1.2 MCS-51匯編語言偽指令
4.1.3 匯編語言的程序設計
4.2 程序設計的基本結構及常用子程序
4.2.1 順序程序結構
4.2.2 分支程序結構
4.2.3 循環程序結構
4.2.4 程序設計舉例
4.2.5 常用子程序
4.3 編程及開發環境
4.3.1 WAVE6000MCS-51單片機編程開發環境
4.3.2 MPLABPIC單片機集成開發環境
本章小結
練習與思考題
第5章 單片機的中斷與定時系統
5.1 MCS-51單片機的中斷系統
5.1.1 計算機中斷技術的概念
5.1.2 中斷源及中斷的控制
5.1.3 中斷響應的控制
5.1.4 中斷服務的流程
5.2 MCS-51單片機的定時器/計數器
5.2.1 計算機定時方法概述
5.2.2 MCS-51單片機定時器/計數器的結構
5.2.3 MCS-51單片機定時器/計數器工作方式
5.3 MCS-51單片機外部中斷源的擴展
5.3.1 通過線或邏輯實現擴展
5.3.2 通過定時器/計數器實現擴展
5.4 其他類型單片機的對照描述
5.4.1 PIC16C5X定時器/計數器的控制結構
5.4.2 相關部分及使用說明
本章小結
練習與思考題
第6章 單片機串行數據通信及串行通信接口
6.1 串行通信基礎知識
6.1.1 串行通信的基本原理
6.1.2 單片機串行接口的結構
6.1.3 單片機串行接口的控制
6.2 MCS-51單片機串行接口及工作方式
6.2.1 串行工作方式0
6.2.2 串行工作方式1
6.2.3 串行工作方式2
6.2.4 串行工作方式3
本章小結
練習與思考題
第7章 單片機擴展與接口技術
7.1 單片機I/O擴展
7.1.1 輸入口線的擴展
7.1.2 輸出口線的擴展
7.1.3 雙向口線的擴展
7.1.4 專用接口芯片的擴展
7.2 單片機的存儲器擴展
7.2.1 程序存儲器的擴展
7.2.2 數據存儲器的擴展
7.2.3 存儲器擴展的應用設計
7.3 單片機鍵盤接口技術
7.3.1 簡易鍵盤接口的實現
7.3.2 矩陣鍵盤接口的實現
7.4 單片機顯示器接口技術
7.4.1 LED數碼管顯示接口
7.4.2 LCD顯示屏接口
7.5 單片機與A/D.D/A轉換器的接口
7.5.1 單片機的D/A轉換指標
7.5.2 采用DAC0832芯片的D/A轉換接口
7.5.3 單片機PWM形式D/A轉換接口電路
7.5.4 單片機的A/D轉換指標
7.5.5 采用ADC0809芯片的A/D轉換接口
7.5.6 采用ADC0832芯片的串行A/D轉換接口
7.5.7 采用MC14433芯片的A/D轉換接口
7.5.8 采用LM331芯片的A/D轉換接口
7.6 單片機與PC機的接口
7.6.1 MCS-51單片機與PC機之間的RS-232C串行通信口
7.6.2 MCS-51單片機的RS-485串行通信接口
本章小結
練習與思考題
第8章 單片機C程序設計及應用
8.1 單片機C51程序設計
8.1.1 單片機C程序的基本概念
8.1.2 單片機C程序的基本結構
8.1.3 單片機C程序的數據類型
8.1.4 單片機C程序的算術表達式
8.1.5 單片機C程序的一般語法結構
8.1.6 C51語言程序設計
8.2 采用C51程序的設計實例
8.2.1 8×8點陣LED顯示屏的設計
8.2.2 數字電壓表的設計
本章小結
練習與思考題
附錄1 MCS-51系列單片機指令表(按字母順序排列)
附錄2 MCS-51系列單片機指令表(按指令類型排序)
參考文獻
第1章 概述
1.1 單片機的概念及單片機的種類
1.1.1 單片機及單片機系統
單片機是微型計算機發展的一個分支,是一種專門面向控制的微處理器件,故又稱之為微控制器(Micro Controller Unit,MCU)。單片機通常以單一芯片的形式出現,但是它已具有了微型計算機所包含的基本組成結構和特有的控制應用功能,是一種芯片級的微型計算機。另外,由于單片機的體積、結構和功能特點,在實際應用中可以完全融入應用系統之中,故而也稱為嵌入式微控制器(Embedded Micro—Controller)。
最基本的單片機系統由單片機芯片和軟件程序共同組建而成,是用戶為了實現某種控制用途的需要而設計的實際裝置。在單片機系統中,單片機芯片內部的中央處理單元(CPU)處于核心地位,CPU通過執行軟件程序調動硬件電路完成控制功能。根據這種工作方式,單片機系統可以劃分為硬件和軟件兩個組成部分。
1 硬件部分
單片機系統的硬件部分是包括CPU在內的所有硬件電路,按照硬件電路的功能和配置大致可以分為以下3類。
1)基本功能類
基本功能類硬件包括:CPU(用于運算、控制)、RAM(用于數據存儲)、ROM(用于程序存儲)、I/O設備(實現串行、并行輸入/輸出接口)及時鐘電路(建立工作時序)。在微型計算機中,上述部件被分成若干塊芯片,安裝在一塊稱之為主板的印刷線路板上,在程序的指揮下完成計算機的基本運算操作功能。但是在單片機中,除了時鐘電路之外,其余部分一般均被集成到一塊半導體芯片上,所以被稱為單片機,即單芯片微型計算機。