內 容 簡 介本書以MCS-51系列單片機為模型,主要介紹單片機的基本結構、工作原理、指令系統、程序設計以及系統擴展與工程應用。在講解單片機原理的同時,也介紹了單片機C語言程序設計方法,特別在講解部分實例時,給出匯編語言和C語言兩種語言的編寫方法,目的是通過比較匯編語言與C語言的編寫特點,使學生能夠有比較性地選擇一種語言進行學習,并且認識另一種語言。本書依據高職教育培養高技能型人才的要求和辦學特點來編寫,內容系統、全面、深入淺出,重點突出動手能力的培養。在講授基本工作原理的同時,作者結合自己多年的教學和項目開發經驗,給出了許多實際項目,在項目的設置上力求做到循序漸進,使學生能夠輕松掌握相關的技能和知識。本書側重單片機系統構成與應用設計,通過實踐環節,軟、硬結合,初步培養學生的單片機開發能力。本書適合高職高專類院校作為單片機或C51等相關課程的教材,也可作為各類電子信息工程、自動化技術人員和計算機愛好者的參考書。
第2版前言本書第1版為國家高職高專計算機實用規劃教材,2011年被評為江蘇省高等學校精品教材。本書在第1版的基礎上,按照教育部高職高專“十二五”規劃教材和電子信息、機電一體化等專業課的要求,總結提高、修改增刪而成。教材在編寫時,編著者提出以下修訂思路:精選內容,突出單片機的案例驅動與項目實踐,注重單片機應用技術的介紹,去掉繁雜的理論分析,簡化器件內部結構的分析,講清基本概念、軟件/硬件的基本工作原理和基本分析方法,力求使本書易教易學。本書主要做了如下改進工作。(1) 在第1版的基礎上,引入多個單片機C語言編程項目,力求使學生多學點C51編程,使學生所學的編程方法更貼近實際。本書在第6章引用了9個C語言編程項目,編程難度循序漸進,每個項目后面附擴展練習,留給編程能力較高的學生練習。(2) 加強單片機電路的設計與新增Proteus仿真分析。Proteus仿真分析對于完成一個單片機項目的設計或修改非常方便,雖然是虛擬實驗,但采用了Proteus仿真更易于項目教學,使學生做實驗更方便。本書的教學采用實際項目和虛擬仿真相結合的方法。第6章的9個項目中重點是Proteus仿真。(3) 單片機教學團隊的老師們與電子產品檢驗所的工程師們經過幾年來的教學與應用實踐,編寫本書第2版時,重點考慮增加企業的單片機案例,使案例更豐富、更實際,再加上Keil和Proteus的結合,仿真實驗簡易、方便,適合讀者學習,所以本教材比市面上現有的相關教材更加實用、經濟,教與學都比較方便,很適合讀者學習。參加本書修訂工作的有王棟(第1、2章)、陳希(第5章)、張宇峰(第6、7章和附錄)、袁志敏(第5、7章的部分內容)、劉訓非(第3、4章)。劉訓非負責全書的策劃、組織和定稿。由于電子信息技術發展迅速,且由于作者水平有限,因此錯誤和疏漏之處在所難免,懇請使用本教材的師生和其他讀者予以批評指正,以便不斷提高。編 者
目 錄
第1章 單片機基礎知識1.1 單片微型計算機1.1.1 單片機最小系統1.1.2 單片機的基本知識1.1.3 Keil C51仿真軟件的基本
用法1.1.4 Proteus的基本用法1.1.5 單片機的應用1.2 計算機的數制1.2.1 數制1.2.2 數制轉換1.2.3 二進制編碼1.2.4 計算機中數的表示習題與思考題第2章 MCS-51單片機的結構2.1 MCS-51單片機的基本結構原理2.1.1 MCS-51單片機的組成2.1.2 MCS-51單片機的內部
結構框圖及引腳功能2.1.3 時鐘電路與復位電路2.1.4 中央處理器CPU2.1.5 8051單片機I/O結構2.2 MCS-51的存儲器2.2.1 程序存儲器ROM2.2.2 數據存儲器RAM2.2.3 MCS-51片內數據存儲器
的配置2.2.4 單片機特殊功能寄存器2.2.5 特殊功能寄存器的位尋址2.3 實踐訓練2.3.1 任務1 數據存儲器的讀寫2.3.2 任務2 彩燈控制習題與思考第3章 MCS-51匯編語言3.1 指令系統3.1.1 指令格式3.1.2 尋址方式3.1.3 指令類型3.1.4 偽指令3.2 匯編語言程序設計3.2.1 三種基本程序結構3.2.2 子程序和參數傳遞方法3.2.3 查表程序設計3.2.4 散轉程序設計3.3 實踐訓練3.3.1 任務1 指令的熟悉及使用3.3.2 任務2 指令的分析及應用3.3.3 任務3 進行20個數的從小
到大排序3.3.4 任務4 數碼管顯示程序
設計習題與思考題第4章 單片機的中斷系統及
定時/計數器4.1 中斷系統4.1.1 中斷的有關概念4.1.2 中斷處理過程4.2 定時/計數器4.2.1 定時/計數器的工作原理4.2.2 定時/計數器的應用4.3 實踐訓練4.3.1 中斷部分4.3.2 定時/計數器習題與思考第5章 MCS-51系統擴展及接口
技術5.1 單片機系統擴展概述5.1.1 單片機應用系統擴展要求5.1.2 單片機常用擴展芯片5.2 I/O 口擴展設計5.2.1 8255可編程并行接口芯片5.2.2 8155可編程并行接口芯片5.3 顯示器接口擴展技術5.4 鍵盤接口設計5.4.1 鍵盤工作原理5.4.2 鍵盤接口設計5.5 模/數(A/D)和數/模(D/A)轉換電路5.5.1 D/A轉換器與8031的
接口設計5.5.2 A/D轉換器與8031的
接口設計5.6 串行接口5.6.1 串行通信基礎及基本概念5.6.2 MCS-51單片機串行口
結構5.6.3 串行接口的工作方式5.6.4 MCS-51串行口的波特率5.7 實踐訓練5.7.1 任務1 輸入/輸出口擴展
設計5.7.2 任務2 A/D和D/A轉換器
電路接口設計5.7.3 任務3 單片機與PC機
通信習題與思考題第6章 C51仿真與應用6.1 八位LED實現乒乓燈6.2 數碼管動態掃描6.3 定時/計數器的使用6.4 單片機外部中斷應用6.5 直流電機正反轉6.6 用ADC0809實現電壓表6.7 1602液晶顯示器控制6.8 簡易秒表制作6.9 點陣LED簡單圖形顯示技術習題與思考題第7章 單片機應用系統設計7.1 單片機應用系統的基本結構7.1.1 單片機應用系統的結構7.1.2 單片機應用系統設計的
基本過程7.2 單片機應用系統的硬件設計7.2.1 硬件系統設計原則7.2.2 硬件設計7.3 單片機應用系統的軟件設計7.3.1 軟件設計的特點7.3.2 資源分配7.3.3 單片機應用系統開發工具7.4 實踐訓練7.4.1 單片機應用系統設計項目1
- 單片機自動門鎖
設計7.4.2 單片機應用系統設計項目2
- 紅外遙控系統設計習題與思考題附錄1 mVision菜單項命令、工具欄
圖標、默認快捷鍵及描述附錄2 C51常用庫函數附錄3 C51中的關鍵字附錄4 匯編指令表