本書以STC89C52RC單片機為代表機型,全面系統(tǒng)地介紹STC89系列單片機的硬件結(jié)構(gòu)與原理、編程方法及其應(yīng)用技術(shù)。采用C51編程語言、Proteus仿真平臺,對單片機片上資源、外圍接口應(yīng)用案例進行分析、設(shè)計與驗證。
本書共分10章,第1章介紹單片機的組成結(jié)構(gòu)、基本概念、主要特點、應(yīng)用領(lǐng)域及其主流產(chǎn)品;第2章介紹單片機的硬件結(jié)構(gòu)及原理;第3~5章介紹單片機的編程語言、程序設(shè)計方法及其開發(fā)流程;第6章介紹單片機的中斷系統(tǒng)、定時/計數(shù)器、串行口等片上資源的原理及應(yīng)用;第7~9章介紹單片機系統(tǒng)的并行總線擴展、并行總線接口、串行總線接口的硬/軟件綜合設(shè)計方法;第10章結(jié)合典型案例闡述單片機應(yīng)用系統(tǒng)的設(shè)計思想。
本書案例設(shè)計豐富,配套有PPT電子課件、課后習題答案、Proteus仿真模型、C51源代碼等資源,既可作為高校電氣工程及其自動化、電子科學(xué)與技術(shù)、計算機科學(xué)與技術(shù)、電子信息工程、通信工程、測控技術(shù)與儀器等各類工科專業(yè)的教材,又可作為工程技術(shù)人員開發(fā)單片機應(yīng)用系統(tǒng)及處理相關(guān)復(fù)雜工程問題的參考設(shè)計資料。
目錄
前言
第1章緒論
1.1微型計算機的基本概念
1.1.1微型計算機的結(jié)構(gòu)與組成
1.1.2微型計算機的應(yīng)用形態(tài)——單片機
1.1.3微型計算機的程序設(shè)計語言
1.2單片機的特點與應(yīng)用領(lǐng)域
1.2.1單片機的特點
1.2.2單片機的應(yīng)用領(lǐng)域
1.3主流單片機
1.3.151內(nèi)核單片機
1.3.2非51內(nèi)核單片機
1.4單片機的發(fā)展趨勢
思考題及習題1
第2章STC89C52RC單片機的硬件結(jié)構(gòu)及原理
2.1STC89C52RC單片機的組成結(jié)構(gòu)與引腳功能
2.1.1STC89C52RC單片機的組成結(jié)構(gòu)
2.1.2STC89C52RC單片機的引腳功能
2.2STC89C52RC單片機的CPU
2.2.1運算器
2.2.2控制器
2.2.3時鐘電路與時序
2.2.4復(fù)位方式與復(fù)位狀態(tài)
2.3STC89C52RC單片機的存儲器
2.3.1程序存儲器
2.3.2數(shù)據(jù)存儲器
2.3.3特殊功能寄存器
2.4STC89C52RC單片機的并行I/O口
2.4.1P0口
2.4.2P1口
2.4.3P2口
2.4.4P3口
2.4.5P0~P3口的功能和特點
2.4.6P4口
2.5STC89C52RC單片機的低功耗模式
2.6STC89C52RC單片機的最小應(yīng)用系統(tǒng)
思考題及習題2
第3章51單片機的尋址方式及匯編指令
3.1匯編語言概述
3.1.1匯編語言的特點
3.1.251單片機匯編指令的格式
3.251單片機的尋址方式
3.2.1立即尋址
3.2.2直接尋址
3.2.3寄存器尋址
3.2.4寄存器間接尋址
3.2.5位尋址
3.2.6變址尋址
3.2.7相對尋址
3.2.8尋址方式小結(jié)
3.351單片機的匯編指令系統(tǒng)
3.3.1數(shù)據(jù)傳送類指令
3.3.2算術(shù)運算類指令
3.3.3邏輯運算與移位類指令
3.3.4位操作類指令
3.3.5控制轉(zhuǎn)移類指令
3.451單片機的匯編程序設(shè)計
3.4.1程序設(shè)計概述
3.4.2匯編程序的偽指令
3.4.3基本程序結(jié)構(gòu)
3.4.4匯編程序設(shè)計案例
思考題及習題3
第4章C51編程語言及程序設(shè)計基礎(chǔ)
4.1C51編程語言簡介
4.1.1C51編程語言概述
4.1.2C51語言與匯編語言的區(qū)別
4.1.3C51語言與標準C語言的區(qū)別
4.2C51程序設(shè)計簡介
4.2.1C51程序設(shè)計概述
4.2.2C51程序開發(fā)過程
4.2.3C51程序編寫示例
4.3C51語言的標識符和關(guān)鍵字
4.3.1標識符
4.3.2關(guān)鍵字
4.4C51語言數(shù)據(jù)類型與存儲模式
4.4.1C51語言的數(shù)據(jù)類型
4.4.2C51語言的存儲類型與存儲模式
4.4.3絕對地址訪問
4.5C51語言的變量與常量
4.5.1常量
4.5.2變量
4.6C51運算符和表達式
4.6.1位運算符
4.6.2算術(shù)運算符
4.6.3關(guān)系運算符
4.6.4邏輯運算符
4.6.5賦值運算符
4.6.6運算符的優(yōu)先級
4.7C51流程控制語句
4.7.1順序結(jié)構(gòu)
4.7.2選擇語句
4.7.3循環(huán)語句
4.8C51構(gòu)造數(shù)據(jù)類型
4.8.1數(shù)組
4.8.2結(jié)構(gòu)體
4.9C51函數(shù)
4.9.1函數(shù)的定義與分類
4.9.2函數(shù)的參數(shù)與返回值
4.9.3函數(shù)的調(diào)用與參數(shù)的傳遞
4.9.4中斷服務(wù)函數(shù)
4.9.5函數(shù)中的變量與存儲方式
4.9.6庫函數(shù)
4.9.7預(yù)處理命令
4.10指針
4.10.1指針的基本概念
4.10.2指針變量的使用
4.10.3數(shù)組指針和指向數(shù)組的指針變量
4.10.4C51語言的指針類型
思考題及習題4
第5章開發(fā)環(huán)境與仿真平臺
5.1Keil C51集成開發(fā)環(huán)境
5.1.1Keil C51 簡介
5.1.2Keil C51的基本操作
5.1.3添加用戶源程序文件
5.1.4程序編譯與調(diào)試
5.1.5項目的設(shè)置
5.1.6程序下載
5.2硬件仿真工具Proteus
5.2.1Proteus功能簡介
5.2.2Proteus Schematic Capture虛擬仿真
5.2.3Proteus Schematic Capture開發(fā)環(huán)境簡介
5.2.4Proteus Schematic Capture編輯環(huán)境設(shè)置
5.2.5Proteus Schematic Capture運行環(huán)境設(shè)置
5.2.6Proteus Schematic Capture虛擬仿真設(shè)計
思考題及習題5
第6章STC89C52RC單片機的片上資源及應(yīng)用
6.1STC89C52RC單片機的中斷系統(tǒng)
6.1.1中斷技術(shù)概述
6.1.2中斷控制系統(tǒng)
6.1.3中斷處理過程
6.1.4中斷服務(wù)函數(shù)
6.1.5中斷系統(tǒng)的應(yīng)用
6.2STC89C52RC單片機的定時/計數(shù)器
6.2.1定時/計數(shù)器的結(jié)構(gòu)及工作原理
6.2.2定時/計數(shù)器的控制寄存器
6.2.3定時/計數(shù)器的工作方式
6.2.4定時/計數(shù)器T2的結(jié)構(gòu)及工作原理
6.2.5定時/計數(shù)器的應(yīng)用
6.3STC89C52RC單片機的串行通信
6.3.1串行通信基礎(chǔ)
6.3.2串行口的結(jié)構(gòu)與控制寄存器
6.3.3串行口的工作方式
6.3.4串行口的應(yīng)用
思考題及習題6
第7章STC89C52RC單片機系統(tǒng)的并行擴展
7.1系統(tǒng)總線擴展技術(shù)
7.1.1系統(tǒng)總線擴展概述
7.1.2外部擴展芯片的地址空間分配
7.2存儲器的并行擴展
7.2.1程序存儲器的擴展
7.2.2數(shù)據(jù)存儲器的擴展
7.3并行 I/O口的擴展
7.3.1I/O口擴展概述
7.3.2利用鎖存器、緩沖器擴展并行I/O口
7.3.3利用串行口工作方式0擴展并行I/O口
7.3.4利用專用芯片8255A擴展并行I/O口
思考題及習題7
第8章STC89C52RC單片機系統(tǒng)的接口技術(shù)
8.1A/D轉(zhuǎn)換器(ADC)
8.1.1ADC概述
8.1.2A/D轉(zhuǎn)換芯片ADC0808
8.1.3ADC與單片機的接口
8.1.4設(shè)計案例:ADC與單片機的接口
8.2D/A轉(zhuǎn)換器(DAC)
8.2.1DAC概述
8.2.2D/A轉(zhuǎn)換芯片DAC0832
8.2.3DAC與單片機的接口
8.2.4設(shè)計案例:程控電壓基準源及波形發(fā)生器設(shè)計
8.3鍵盤與單片機的接口
8.3.1鍵盤概述
8.3.2鍵盤掃描方式選擇
8.3.3獨立式按鍵與單片機的接口
8.3.4矩陣式按鍵與單片機的接口
8.4顯示器與單片機的接口
8.4.1LED的原理及應(yīng)用
8.4.2LED數(shù)碼管與單片機的接口
8.4.3LCD與單片機的接口
8.4.4專用芯片HD7279A與單片機的接口
思考題及習題8
第9章串行總線接口技術(shù)
9.1單總線串行接口
9.1.1單總線串行接口的原理
9.1.2單總線串行接口的結(jié)構(gòu)
9.1.3單總線串行接口的命令序列
9.1.4單總線數(shù)字溫度傳感器DS18B20
9.1.5設(shè)計案例:DS18B20電子溫度計的設(shè)計
9.2SPI總線串行接口
9.2.1SPI基本原理
9.2.2SPI通信協(xié)議概述
9.2.3SPI總線接口
9.2.4設(shè)計案例:SPI總線與10位DAC TLC5615芯片的接口
9.3I2C串行總線接口
9.3.1I2C總線基本原理
9.3.2I2C總線數(shù)據(jù)傳輸
9.3.351單片機的I2C總線時序模擬
9.3.451單片機與AT24C08的接口
9.3.5設(shè)計案例:I2C總線與12位ADC MCP3221芯片的接口
思考題及習題9
第10章單片機應(yīng)用系統(tǒng)設(shè)計與仿真實踐
10.1單片機應(yīng)用系統(tǒng)的設(shè)計
10.1.1單片機應(yīng)用系統(tǒng)的組成結(jié)構(gòu)
10.1.2單片機應(yīng)用系統(tǒng)的設(shè)計方法
10.2單片機應(yīng)用系統(tǒng)的仿真實踐
10.2.1單片機開發(fā)板
10.2.2風扇智能溫度控制電路的設(shè)計
10.2.3雙路脈寬調(diào)制信號發(fā)生器的設(shè)計
思考題及習題10
附錄
附錄A51內(nèi)核單片機匯編指令表
附錄BC51的關(guān)鍵字
附錄CC51的庫函數(shù)
參考文獻