深入淺出C51:單片機原理、接口與項目實踐

王春榮、夏爾冬、郭淩宙

  • 出版商: 清華大學 滿千折百
  • 出版日期: 2026-09-01
  • 定價: $455
  • 售價: $454
  • 語言: 簡體中文
  • 頁數: 252
  • ISBN: 7302727805
  • ISBN-13: 9787302727804
  • 下單後立即進貨 (約4週~6週)

  • 深入淺出C51:單片機原理、接口與項目實踐-preview-1
  • 深入淺出C51:單片機原理、接口與項目實踐-preview-2
  • 深入淺出C51:單片機原理、接口與項目實踐-preview-3
深入淺出C51:單片機原理、接口與項目實踐-preview-1

相關主題

商品描述

《深入淺出C51 : 單片機原理、接口與項目實踐》是一本帶領讀者輕松學習 AT89C51 單片機開發的實用教程。本書從理論到實踐,從模塊到系統,以“硬件→指令→編程→接口→項目”為主線,用 13 章的篇幅,詳細解讀了 AT89C51 的內部結構、匯編指令系統與程序設計方法,並手把手指導搭建開發環境。在此基礎上,深入剖析了中斷、定時、串行通信等單片機的核心功能,以及 I/O 擴展和鍵盤、顯示等人機交互技術,最終通過綜合項目設計實現知識的融會貫通。 本書源於作者多年的教學積澱,語言通俗易懂,體系清晰,並配有精心制作的 PPT 課件,極大地提升了學習效率。

目錄大綱

目錄

第1章 單片機概述 1

1.1 嵌入式系統與單片機簡介 1

1.1.1 嵌入式系統 1

1.1.2 單片機在嵌入式系統中的地位 3

1.2 單片機的發展歷史及應用領域 5

1.2.1 發展歷史 5

1.2.2 應用領域 7

1.3 主流單片機系列簡介 9

1.4 AT89C51 單片機簡介 12

1.5 如何學習單片機 13

課後習題 14

第2章 AT89C51單片機硬件結構 15

2.1 AT89C51 的內部結構與引腳功能 15

2.1.1 內部結構總覽 15

2.1.2 引腳功能詳解 16

2.2 中央處理器 18

2.3 存儲器結構 19

2.3.1 程序存儲器 19

2.3.2 內部數據存儲器 20

2.3.3 特殊功能寄存器 21

2.3.4 三總線結構 25

2.4 I/O 端口結構與工作原理 25

2.4.1 P0 口的結構與工作原理 25

2.4.2 P1 口的結構與工作原理 26

2.4.3 P2 口的結構與工作原理 27

2.4.4 P3 口的結構與工作原理 27

2.4.5 端口負載能力與接口要求 28

2.5 單片機的最小系統電路設計 29

2.5.1 電源電路 29

2.5.2 時鐘電路與 CPU 時序 29

2.5.3 復位電路 31

2.5.4 EA 引腳處理 32

2.5.5 搭建最小系統與點亮 LED 33

課後習題 34

第3章 AT89C51匯編指令系統 35

3.1 匯編語言格式與尋址方式 35

3.1.1 匯編指令格式 35

3.1.2 匯編指令中的常用符號 36

3.1.3 尋址方式 37

3.2 數據傳送類指令 39

3.2.1 內部 RAM 和 SFR 之間的數據傳送 39

3.2.2 外部 RAM 的數據傳送 41

3.2.3 查表指令 41

3.2.4 數據交換指令 42

3.2.5 棧操作指令 43

3.3 算術運算類指令 43

3.3.1 不帶進位的加法指令 43

3.3.2 帶進位的加法指令 44

3.3.3 帶借位的減法指令 44

3.3.4 加1指令 45

3.3.5 減1指令 45

3.3.6 乘法指令 45

3.3.7 除法指令 46

3.3.8 十進制調整指令 46

3.4 邏輯運算與移位類指令 46

3.4.1 邏輯“與”運算指令 47

3.4.2 邏輯“或”運算指令 47

3.4.3 邏輯“異或”運算指令 47

3.4.4 循環移位指令 48

3.4.5 清零與取反指令 48

3.5 控制轉移類指令 48

3.5.1 無條件轉移指令 49

3.5.2 條件轉移指令 50

3.5.3 子程序調用與返回指令 51

3.5.4 空操作指令 51

3.6 位操作指令 51

3.6.1 位操作的基本概念 52

3.6.2 位傳送指令 52

3.6.3 位置位與清零指令 52

3.6.4 位邏輯運算指令 53

3.6.5 位控制轉移指令 53

課後習題 54

第4章 匯編語言程序設計 57

4.1 偽指令與匯編程序設計的基本步驟 57

4.1.1 偽指令 57

4.1.2 匯編程序設計的基本步驟 60

4.2 程序設計方法 61

4.2.1 順序結構 61

4.2.2 分支結構 61

4.2.3 循環結構 65

4.3 子程序設計與堆棧操作 70

4.3.1 子程序的結構與調用 70

4.3.2 參數傳遞與堆棧操作 73

4.4 查表程序設計 74

4.5 延時程序設計 75

4.6 代碼風格與註釋規範 77

課後習題 78

第5章 單片機開發環境搭建 82

5.1 軟件開發流程 82

5.2 匯編語言程序設計基礎 84

5.3 Keil μVision 集成開發環境的使用 85

5.3.1 軟件的安裝與註冊 85

5.3.2 點亮 LED 86

5.4 程序仿真與調試方法 89

5.5 程序下載到單片機的方法 90

5.5.1 編程器與下載線 90

5.5.2 使用 STC-ISP 軟件下載程序 91

課後習題 91

第6章 定時器/計數器 92

6.1 定時器/計數器的工作原理 92

6.1.1 定時器/計數器模式 93

6.1.2 基本工作流程 94

6.2 工作方式寄存器與控制寄存器 94

6.2.1 工作方式寄存器 TMOD 94

6.2.2 控制寄存器 TCON 95

6.3 工作方式詳解 96

6.3.1 方式 0 96

6.3.2 方式 1 96

6.3.3 方式 2 97

6.3.4 方式 3 98

6.4 定時器的應用 99

6.5 計數器的應用 100

課後習題 102

第7章 串行通信 104

7.1 串行通信基本概念 104

7.1.1 串行通信與並行通信 104

7.1.2 同步通信與異步通信 107

7.1.3 傳輸方向 110

7.2 RS-232 通信標準與電平轉換 112

7.2.1 RS-232 簡介 112

7.2.2 電平轉換與 MAX232 芯片 114

7.3 串行口結構與控制寄存器 116

7.3.1 串行口內部結構 116

7.3.2 串行口控制寄存器 SCON 118

7.3.3 電源控制寄存器 PCON 119

7.4 串行口工作模式 120

7.4.1 模式 0 120

7.4.2 模式 1 121

7.4.3 模式 2 122

7.4.4 模式 3 122

7.5 串行口的應用 123

7.5.1 串行口工作方式 0 123

7.5.2 串行口工作方式 1 126

7.5.3 單片機雙機通信技術 128

7.5.4 雙機通信軟件協議設計與實現 129

課後習題 132

第8章 中斷系統 133

8.1 中斷的概念與優點 133

8.1.1 什麼是中斷 133

8.1.2 中斷的優點 134

8.2 中斷源與中斷結構 135

8.2.1 中斷源 135

8.2.2 中斷結構 135

8.3 中斷允許寄存器與中斷優先級寄存器 136

8.3.1 中斷允許寄存器 IE 136

8.3.2 中斷優先級寄存器 IP 137

8.4 外部中斷的應用 138

8.5 中斷服務程序的編寫要點 140

課後習題 141

第9章 並行I/O口擴展 143

9.1 I/O 口擴展的必要性與方法 143

9.1.1 擴展的必要性 143

9.1.2 擴展的基本方法 144

9.2 使用簡單芯片擴展(74HC573和74HC245) 145

9.2.1 使用 74HC573 擴展輸出口 145

9.2.2 使用 74HC245 擴展輸入口 148

9.3 使用可編程接口芯片 8255A 擴展 155

9.3.1 可編程並行接口芯片 8255A 155

9.3.2 芯片 8255A 的應用 158

課後習題 163

第10章 人機交互接口技術 164

10.1 LED 數碼管顯示原理 164

10.1.1 數碼管的基本結構 164

10.1.2 靜態顯示原理與應用 166

10.1.3 動態掃描原理與應用 168

10.2 獨立按鍵與矩陣鍵盤的檢測原理與編程 170

10.2.1 獨立按鍵 171

10.2.2 矩陣鍵盤 172

10.3 字符型 LCD1602 液晶顯示器的應用 177

10.3.1 LCD1602 概述 177

10.3.2 LCD1602 的指令集 177

10.3.3 LCD1602 的初始化與編程 178

10.3.4 自定義字符的應用 181

課後習題 181

第11章 模擬量接口技術 183

11.1 模擬量與數字量的概念 183

11.1.1 模擬信號與數字信號 183

11.1.2 模擬系統與數字系統的接口 184

11.1.3 A/D 轉換的核心概念 186

11.2 D/A 轉換原理與芯片 DAC0832 的應用 186

11.2.1 D/A 轉換的基本原理 186

11.2.2 DAC0832 芯片詳解與應用 188

11.3 A/D 轉換原理與芯片 ADC0804/0809 的應用 194

11.3.1 A/D 轉換的基本原理 194

11.3.2 ADC0804 芯片詳解與應用 196

11.3.3 ADC0809 芯片詳解與應用 198

11.3.4 A/D 轉換的應用 202

課後習題 203

第12章 綜合項目設計 205

12.1 項目一:數字溫度計 205

12.1.1 設計目的與意義 205

12.1.2 項目設計要求 206

12.1.3 項目設計內容 206

12.2 項目二:紅外遙控系統 213

12.2.1 設計目的與意義 213

12.2.2 項目設計要求 213

12.2.3 項目設計內容 213

12.3 項目三:步進電機控制 219

12.3.1 設計目的與意義 219

12.3.2 項目設計要求 220

12.3.3 項目設計內容 220

12.4 項目四:智能小車控制 225

12.4.1 設計目的與意義 225

12.4.2 項目設計要求 225

12.4.3 項目設計內容 225

課後習題 232

第13章 C語言與匯編語言混合編程簡介 234

13.1 匯編語言與 C 語言 234

13.2 C51 編程基礎與實踐應用 235

13.3 匯編語言與 C 語言的混合編程與調用 239

課後習題 242

參考文獻 243

附錄A AT89C51指令表 244

A.1 數據傳送類指令 244

A.2 算術運算類指令 245

A.3 邏輯運算類指令 246

A.4 控制轉移類指令 246

A.5 位操作類指令 247

附錄B ASCII碼表 249