相關主題
商品描述
本書以MCS-51單片機為對象,闡述了其結構和功能、指令系統、匯編語言和C51語言程序設計、中斷系統和定時/計數器、並行和串行存儲器擴展技術、串行通信接口、顯示器和鍵盤接口技術、數/模和模/數轉換器的接口技術;介紹了常用模擬軟件Proteus和Keil的Windows 集成開發環境的使用方法;以典型例題為載體,以匯編語言和C51語言相對應的方式介紹了程序設計方法及單片機系統的設計方法。本書以C51語言為主,匯編語言為輔。本書中所有例題均給出源程序及模擬運行結果。
作者簡介
郭文川,1995年7月至今,一直在西北農林科技大學,機械與電子工程學院任教,曾任學院副院長,歷經講師,副教授和教授之職。
先後發表科研論文100餘篇,其中以第一作者發表被SCI、EI收錄收錄論文80餘篇。
曾獲西北農林科技大學2012年教學成果二等獎,中國農業部2008年全國高等農林院校優秀教材獎等獎項。
目錄大綱
目 錄
第1章 微型計算機基本知識 1
1.1 數制與編碼 1
1.1.1 數制 1
1.1.2 編碼 3
1.2 計算機中有符號數的表示方法 5
1.2.1 數的符號的表示法 5
1.2.2 原碼、反碼和補碼 6
1.2.3 補碼的加減法運算 8
1.3 微型計算機系統組成及工作工程 9
1.3.1 微型計算機的組成 9
1.3.2 中央處理單元的組成 10
1.3.3 微型計算機的工作過程 12
1.4 單片機概述 15
1.4.1 單片機系統的特點 16
1.4.2 單片機的應用 16
1.4.3 單片機的發展歷史及未來方向 17
1.4.4 MCS-51系列單片機 18
1.4.5 主流的單片機類型 20
1.4.6 STC單片機標識說明 22
本章小結 22
思考題和習題 23
第2章 MCS-51系列單片機的結構和工作原理 24
2.1 MCS-51單片機的內部組成和信號引腳 24
2.1.1 80C51單片機的內部組成 24
2.1.2 MCS-51系列單片機的引腳及功能 26
2.2 51子系列單片機的存儲器配置 28
2.2.1 程序存儲器 29
2.2.2 數據存儲器 30
2.3 並行I/O口P0~P3的結構 35
2.3.1 P0口 35
2.3.2 P1口 36
2.3.3 P2口 37
2.3.4 P3口 37
2.4 時鐘電路與時序 38
2.4.1 時鐘電路 38
2.4.2 時序定時單位 39
2.4.3 MCS-51典型指令時序 39
2.5 復位電路和低功耗工作方式 41
2.5.1 復位電路 41
2.5.2 掉電保護方式 42
2.5.3 低功耗工作方式 42
本章小結 44
思考題與習題 44
第3章 MCS-51單片機的指令系統 46
3.1 概述 46
3.1.1 指令和程序設計語言 46
3.1.2 彙編語言程序語句格式 47
3.1.3 操作數的類型 48
3.1.4 機器語言語句格式 48
3.1.5 偽指令 49
3.2 尋址方式 52
3.2.1 符號註釋 53
3.2.2 尋址方式 53
3.3 MCS-51單片機的指令系統 57
3.3.1 數據傳送類指令 58
3.3.2 算術運算類指令 62
3.3.3 邏輯運算及移位類指令 66
3.3.4 控制轉移類指令 68
3.3.5 位操作類指令 73
本章小結 75
思考題與習題 76
第4章 MCS-51單片機的彙編語言程序設計 78
4.1 順序程序設計 78
4.2 循環程序設計 79
4.3 分支程序設計 81
4.4 子程序設計 83
本章小結 85
思考題與習題 85
第5章 單片機的C51語言編程基礎 86
5.1 C51程序的基本結構和常用的頭文件 86
5.1.1 C51程序的基本結構 86
5.1.2 C51中常用的頭文件 87
5.2 C51的基本數據類型、數據存儲類型和存儲模式 89
5.2.1 C51的基本數據類型 89
5.2.2 C51數據的存儲類型 90
5.2.3 C51數據的存儲模式 90
5.2.4 變量聲明舉例 91
5.3 C51的運算符 92
5.4 C51的函數 93
5.4.1 函數的分類 94
5.4.2 函數的定義 94
5.4.3 函數的調用 94
5.4.4 對被調用函數的說明 95
5.5 單片機的C51語言編程 95
5.6 C51與彙編語言的混合編程 99
本章小結 101
思考題與習題 102
第6章 MCS-51單片機中斷系統與定時/計數器 103
6.1 中斷概述 103
6.1.1 數據的輸入/輸出傳送方式 103
6.1.2 中斷的基本概念 104
6.2 51子系列單片機的中斷系統結構及中斷控制 105
6.2.1 中斷源 106
6.2.2 中斷控制 107
6.2.3 中斷矢量地址 109
6.2.4 中斷響應過程及中斷響應時間 110
6.3 中斷的彙編和C51語言程序設計及外部中斷應用舉例 111
6.3.1 中斷的彙編和C51語言程序設計基本問題 111
6.3.2 外部中斷應用舉例 112
6.4 51子系列單片機定時/計數器的結構和寄存器 116
6.4.1 定時和計數的概念 116
6.4.2 51子系列單片機定時/計數器的結構 117
6.4.3 定時/計數器的寄存器 118
6.5 定時/計數器的工作方式及應用 119
6.5.1 工作方式0 119
6.5.2 工作方式1 121
6.5.3 工作方式2 123
6.5.4 工作方式3 124
6.6 定時/計數器的應用實例 126
6.6.1 在測試信號中的應用 126
6.6.2 在驅動直流電動機中的應用 127
6.6.3 在音樂輸出方面的應用 129
本章小結 132
思考題與習題 133
第7章 MCS-51單片機串行接口 135
7.1 串行通信概述 135
7.1.1 異步通信和同步通信 135
7.1.2 串行通信的線路傳輸方式 136
7.1.3 波特率 137
7.2 MCS-51單片機串行口 137
7.2.1 串行口結構及工作原理 137
7.2.2 與串行口相關的特殊功能寄存器 139
7.2.3 波特率的設計 141
7.2.4 串行通信工作方式 142
7.2.5 串行口的應用舉例 143
7.2.6 串行口方式2和方式3的應用 148
7.3 RS-232C標準接口總線及串行通信硬件設計 149
7.3.1 RS-232C標準接口總線 149
7.3.2 信號電氣特性與電平轉換 150
7.3.3 RS-232C的應用 152
7.3.4 單片機與單片機及單片機與PC之間的串行通信接口電路 153
7.4 單片機之間的點對點串行異步通信 154
7.4.1 通信協議 154
7.4.2 通信程序舉例 154
7.5 單片機與PC之間的通信 160
7.5.1 PC串口調試助手的介紹 160
7.5.2 單片機與PC通信的舉例 162
本章小結 164
思考題與習題 165
第8章 存儲器的擴展 166
8.1 單片機的擴展結構 166
8.1.1 單片機的擴展結構 166
8.1.2 單片機擴展的實現 167
8.2 並行存儲器的擴展 168
8.2.1 並行程序存儲器的擴展 168
8.2.2 並行數據存儲器的擴展 174
8.2.3 並行程序存儲器和數據存儲器的混合擴展 177
8.3 I2C總線及串行E2PROM的擴展 179
8.3.1 I2C總線概述 179
8.3.2 基於I2C總線的串行E2PROM的擴展 182
本章小結 187
思考題與習題 187
第9章 單片機並行I/O接口擴展 188
9.1 I/O接口擴展概述 188
9.1.1 I/O接口電路應具有的功能 188
9.1.2 I/O接口的基本結構 189
9.1.3 I/O接口的操作 189
9.2 簡單並行I/O接口擴展 190
9.2.1 擴展並行輸入口 190
9.2.2 擴展並行輸出口 191
9.3 可編程並行I/O接口芯片8255A 193
9.3.1 8255A芯片內部結構及功能 193
9.3.2 8255A的操作說明 194
9.3.3 8255A與單片機的接口設計 197
9.4 數碼管接口技術 200
9.4.1 數碼管簡介 201
9.4.2 數碼管的靜態顯示接口 202
9.4.3 動態顯示接口 203
9.5 LCD接口技術 205
9.5.1 LCD1602簡介 205
9.5.2 LCD1602應用舉例 209
9.6 鍵盤接口技術 211
9.6.1 鍵盤結構及閉合鍵的識別方法 211
9.6.2 行列式鍵盤接口舉例 216
本章小結 219
思考題與習題 220
第10章 並行A/D及D/A轉換器接口技術 222
10.1 A/D及D/A轉換器主要參數 222
10.1.1 A/D轉換器主要參數 222
10.1.2 D/A轉換器主要參數及輸入輸出特性 223
10.2 8位並行DAC0832及其接口技術 224
10.2.1 DAC0832簡介 224
10.2.2 DAC0832與單片機的接口及編程 226
10.3 12位並行DAC1210及其接口技術 232
10.3.1 DAC1210簡介 232
10.3.2 DAC1210與單片機的接口技術 233
10.4 並行ADC0808(0809)及其接口技術 234
10.4.1 ADC0808和ADC0809簡介 234
10.4.2 ADC0808(0809)與單片機的接口及編程 237
10.5 12位並行AD574A及其接口技術 241
10.5.1 AD574A簡介 241
10.5.2 AD574A與單片機的接口與編程 244
本章小結 245
思考題與習題 245
第11章 單片機系統開發軟件使用說明 247
11.1 Keil軟件使用說明 247
11.1.1 Keil工程的建立 247
11.1.2 工程的設置 251
11.1.3 編譯和鏈接 254
11.1.4 調試 254
11.2 Proteus ISIS使用簡介 259
11.2.1 Proteus軟件組成 260
11.2.2 啟動Proteus ISIS 260
11.2.3 菜單介紹 262
11.2.4 基本操作 265
11.2.5 Proteus組件庫 271
11.2.6 電路原理圖設計方法 274
11.2.7 實例講解 274
本章小結 276
第12章 單片機應用系統設計與調試 277
12.1 單片機應用系統開發與開發工具 277
12.1.1 單片機應用系統的構成和設計內容 277
12.1.2 應用系統的設計步驟和原則 278
12.1.3 單片機應用系統的開發工具 279
12.1.4 單片機應用系統的調試 280
12.2 功率擴展與隔離技術 281
12.2.1 功率擴展 281
12.2.2 隔離技術 282
12.3 單片機應用系統的抗干擾技術 283
12.3.1 干擾的來源 283
12.3.2 硬件抗干擾技術 283
12.3.3 軟件抗干擾技術 286
12.3.4 “看門狗”技術 287
本章小結 288
附錄A ASCII碼字符表 289
附錄B MCS-51系列單片機指令表 290
附錄C 單片機中常用詞語英漢對照 295