本書以MCS-51單片機為主,主要內(nèi)容:緒論為單片機簡介,第1章介紹單片機的結(jié)構(gòu)與原理,第2章介紹單片機的指令系統(tǒng)與程序設(shè)計,第3章介紹單片機的內(nèi)部資源及應(yīng)用,第4~6章介紹單片機的外圍接口技術(shù),第7章介紹單片機系統(tǒng)設(shè)計,第8章為課程設(shè)計與創(chuàng)新實驗題目。第1~7章配有習(xí)題,并免費提供包括CAI課件、典型例題的Proteus仿真源代碼、仿真演示視頻(二維碼)、習(xí)題參考答案等在內(nèi)的教學(xué)資源包。CAI課件可登錄華信教育資源網(wǎng)(www.hxedu.com.cn)下載。 本書以培養(yǎng)學(xué)生的工程實踐能力與創(chuàng)新能力為目標(biāo),突出多種典型、常用集成電路芯片的介紹與應(yīng)用,突出單片機外圍接口芯片的擴(kuò)展、單片機系統(tǒng)的設(shè)計與實現(xiàn)及單片機的典型應(yīng)用;匯編語言與C51語言程序設(shè)計并重,注重新技術(shù)和新器件的引入,如I2C總線、時鐘芯片、串行A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器、片上系統(tǒng)(SoC)等;理論聯(lián)系實際,系統(tǒng)實用。
張鑫,現(xiàn)為山東工商學(xué)院信息與電子工程學(xué)院教授。1985年7月畢業(yè)于哈爾濱科技大學(xué)電子工程系,獲工學(xué)學(xué)士學(xué)位,1988年4月畢業(yè)于哈爾濱理工大學(xué)自動化儀表系,獲工學(xué)碩士學(xué)位。 從教21年來,主講過單片機原理及應(yīng)用、微機原理及應(yīng)用、計算機控制系統(tǒng)、集散控制系統(tǒng)、過程控制工程、可編程控制器、檢測技術(shù)及儀表、控制儀表及裝置、機床電氣與控制、化工儀表及自動化、電路原理、電工學(xué)、數(shù)字電路等多門課程。正式出版著作3部,在《電力設(shè)備自動化》等雜志發(fā)表論文30余篇,主持參與省部級項目5項,完成橫向課題多項,主要研究方向為嵌入式系統(tǒng)應(yīng)用。
緒論 1
第1章 MCS-51單片機的結(jié)構(gòu)與原理 10
1.1 MCS-51單片機硬件結(jié)構(gòu)及引腳 10
1.1.1 MCS-51單片機內(nèi)部結(jié)構(gòu) 10
1.1.2 MCS-51單片機外部引腳 17
1.1.3 AT89單片機簡介 19
1.1.4 STC單片機簡介 19
1.2 MCS-51單片機的工作方式 20
1.2.1 復(fù)位方式 20
1.2.2 程序執(zhí)行方式 21
1.2.3 節(jié)電方式 21
1.2.4 編程和校驗方式 23
1.3 單片機的時序 23
1.3.1 MCS-51單片機的時序單位 23
1.3.2 MCS-51單片機指令的取指/執(zhí)行時序 23
1.3.3 訪問外部ROM/RAM指令的時序 24
1.4 C8051F片上系統(tǒng)簡介 26
習(xí)題1 27
第2章 MCS-51單片機的指令系統(tǒng)與程序設(shè)計 29
2.1 匯編語言概述 29
2.1.1 匯編語言指令格式與偽指令 29
2.1.2 指令的分類 32
2.1.3 指令中的常用符號 32
2.1.4 指令的字節(jié)數(shù) 33
2.2 MCS-51單片機的尋址方式 34
2.2.1 立即尋址 34
2.2.2 直接尋址 34
2.2.3 寄存器尋址 35
2.2.4 寄存器間接尋址 35
2.2.5 變址尋址 36
2.2.6 相對尋址 37
2.2.7 位尋址 38
2.3 MCS-51單片機的指令系統(tǒng) 38
2.3.1 數(shù)據(jù)傳送指令 38
2.3.2 算術(shù)運算指令 44
2.3.3 邏輯運算及移位指令 48
2.3.4 控制轉(zhuǎn)移指令 51
2.3.5 位操作指令 57
2.4 C51語言 60
2.4.1 C51語言的程序結(jié)構(gòu)、數(shù)據(jù)與存儲類型 60
2.4.2 C51語言的頭文件與庫函數(shù) 64
2.4.3 C51語言中絕對地址的訪問 65
2.4.4 C51語言與匯編語言混合編程的方法 67
2.5 程序設(shè)計 68
2.5.1 匯編語言程序設(shè)計的步驟 68
2.5.2 順序程序設(shè)計 69
2.5.3 分支程序設(shè)計 70
2.5.4 循環(huán)程序設(shè)計 72
2.5.5 查表程序設(shè)計 77
2.5.6 子程序設(shè)計 81
2.6 程序設(shè)計舉例 84
2.6.1 多字節(jié)算術(shù)運算程序 84
2.6.2 數(shù)制轉(zhuǎn)換程序 85
2.6.3 散轉(zhuǎn)程序 88
2.7 匯編語言的開發(fā)環(huán)境 91
2.7.1 單片機開發(fā)系統(tǒng) 91
2.7.2 匯編語言源程序的編輯與匯編 92
2.7.3 匯編語言源程序的調(diào)試 92
習(xí)題2 94
第3章 MCS-51單片機的內(nèi)部資源及應(yīng)用 97
3.1 MCS-51單片機的并行I/O接口 97
3.1.1 并行I/O接口的內(nèi)部結(jié)構(gòu) 97
3.1.2 MCS-51單片機并行I/O接口的應(yīng)用 99
3.1.3 C51語言中MCS-51單片機并行I/O接口的定義方法 101
3.2 MCS-51單片機的中斷系統(tǒng) 102
3.2.1 中斷的基本概念 102
3.2.2 MCS-51單片機中斷系統(tǒng)簡介 103
3.2.3 中斷的軟件設(shè)計 109
3.2.4 MCS-51單片機擴(kuò)展外部中斷請求輸入口 110
3.3 MCS-51單片機的定時器/計數(shù)器 112
3.3.1 定時器/計數(shù)器 112
3.3.2 定時器/計數(shù)器的工作方式 114
3.3.3 定時器/計數(shù)器的應(yīng)用 115
3.4 MCS-51單片機的串行通信 120
3.4.1 概述 120
3.4.2 MCS-51單片機的串行口 122
3.4.3 串行口的工作方式 124
3.4.4 串行口的通信波特率 125
3.4.5 串行口的初始化 126
3.4.6 串行口的應(yīng)用 126
習(xí)題3 135
第4章 MCS-51單片機的系統(tǒng)擴(kuò)展技術(shù) 138
4.1 MCS-51單片機系統(tǒng)擴(kuò)展概述 138
4.1.1 MCS-51單片機外部擴(kuò)展原理 138
4.1.2 MCS-51單片機系統(tǒng)地址空間的分配 139
4.2 存儲器的擴(kuò)展 140
4.2.1 程序存儲器的擴(kuò)展 141
4.2.2 數(shù)據(jù)存儲器的擴(kuò)展 144
4.2.3 MCS-51單片機對外部存儲器的擴(kuò)展 146
4.3 并行I/O接口的擴(kuò)展 146
4.3.1 概述 146
4.3.2 普通并行I/O接口的擴(kuò)展 147
4.3.3 可編程并行I/O接口芯片的擴(kuò)展 148
4.4 時鐘芯片的擴(kuò)展 157
4.4.1 時鐘芯片概述 158
4.4.2 DS1302的工作原理及應(yīng)用 158
4.5 總線接口的擴(kuò)展 164
4.5.1 RS-232C總線標(biāo)準(zhǔn)與接口電路 165
4.5.2 RS-422/RS-485總線標(biāo)準(zhǔn)與接口電路 167
4.5.3 I2C總線標(biāo)準(zhǔn)與接口電路 170
4.5.4 其他常用總線標(biāo)準(zhǔn) 173
習(xí)題4 175
第5章 MCS-51單片機的輸入/輸出通道設(shè)計 177
5.1 輸入/輸出通道概述 177
5.1.1 傳感器 177
5.1.2 單片機系統(tǒng)的輸入/輸出通道 177
5.2 D/A轉(zhuǎn)換器及其硬件和軟件設(shè)計 180
5.2.1 D/A轉(zhuǎn)換器的性能指標(biāo) 180
5.2.2 D/A轉(zhuǎn)換器的分類 180
5.2.3 D/A轉(zhuǎn)換器的硬件和軟件設(shè)計 181
5.3 A/D轉(zhuǎn)換器及接口技術(shù) 188
5.3.1 A/D轉(zhuǎn)換器的性能指標(biāo) 188
5.3.2 A/D轉(zhuǎn)換器的分類 189
5.3.3 A/D轉(zhuǎn)換器的硬件和軟件設(shè)計 190
5.3.4 數(shù)據(jù)采集系統(tǒng) 198
習(xí)題5 201
第6章 MCS-51單片機的交互通道配置與設(shè)計 202
6.1 MCS-51單片機擴(kuò)展鍵盤的技術(shù) 202
6.1.1 概述 202
6.1.2 使用鍵盤時必須解決的問題 203
6.1.3 MCS-51單片機擴(kuò)展鍵盤的硬件和軟件設(shè)計 204
6.2 MCS-51單片機擴(kuò)展顯示器的技術(shù) 216
6.2.1 LED顯示器及其硬件和軟件設(shè)計 216
6.2.2 液晶顯示器及其硬件和軟件設(shè)計 223
6.2.3 單片機擴(kuò)展液晶顯示模塊LCD1602 224
6.3 MCS-51單片機擴(kuò)展鍵盤和顯示器的設(shè)計實例 233
6.3.1 利用8155/8255A擴(kuò)展鍵盤和顯示器 233
6.3.2 利用MCS-51單片機的串行口擴(kuò)展鍵盤和顯示器 236
6.3.3 利用專用芯片擴(kuò)展鍵盤和顯示器 238
習(xí)題6 239
第7章 MCS-51單片機系統(tǒng)設(shè)計 240
7.1 單片機系統(tǒng)設(shè)計過程 241
7.1.1 總體設(shè)計 241
7.1.2 硬件設(shè)計 242
7.1.3 軟件設(shè)計 243
7.1.4 可靠性設(shè)計 245
7.1.5 單片機系統(tǒng)的調(diào)試與測試 249
7.2 MCS-51單片機系統(tǒng)設(shè)計舉例 250
7.2.1 在工業(yè)測控系統(tǒng)中的應(yīng)用 250
7.2.2 在溫度監(jiān)控系統(tǒng)中的應(yīng)用 253
7.2.3 在直流電動機調(diào)速中的應(yīng)用 258
習(xí)題7 261
第8章 課程設(shè)計與創(chuàng)新實驗題目 262
8.1 交通信號燈實時控制系統(tǒng)的設(shè)計 262
8.2 智力競賽搶答器的設(shè)計 262
8.3 住校學(xué)生生活時間提示系統(tǒng)的設(shè)計 263
8.4 多路數(shù)據(jù)采集系統(tǒng)的設(shè)計 263
8.5 溫度監(jiān)控系統(tǒng)的設(shè)計 263
8.6 萬年歷的設(shè)計 263
8.7 醫(yī)院住院病人呼叫器的設(shè)計 263
8.8 電子密碼鎖的設(shè)計 264
8.9 超聲波測距系統(tǒng)的設(shè)計 264
8.10 數(shù)字頻率計的設(shè)計 264
8.11 電梯自動控制電路的設(shè)計 264
8.12 出租車計程計價器的設(shè)計 265
8.13 智能化公共汽車報站器的設(shè)計 265
8.14 自動往返電動車的設(shè)計 265
8.15 簡易IC卡收費器的設(shè)計 265
8.16 消毒柜控制系統(tǒng)的設(shè)計 265
附錄A ASCII碼字符表 266
附錄B MCS-51單片機指令表 267
參考文獻(xiàn) 271