內容簡介
《電子工程師自學成才手冊》分為基礎篇、提高篇、精通篇三冊。本書為精通篇,主要包括單片機快速入門、51單片機的硬體系統、STC89C5x系列單片機介紹、51單片機編程軟體的使用、單片機驅動LED的電路及編程、單片機驅動LED數碼管的電路及編程、中斷與中斷編程、定時器/計數器的使用及編程、按鍵電路及編程、點陣和液晶顯示屏的使用及編程、步進電動機的使用及編程、串列通信的使用及編程、I2C匯流排通信的使用及編程、A/D與D/A轉換電路及編程、電路繪圖設計軟體入門、設計電路原理圖、製作新元件、手工設計PCB圖、自動設計PCB圖、製作新元件封裝等內容。本書具有基礎起點低、內容由淺入深、語言通俗易懂、結構安排符合學習認知規律的特點,適合作為電子工程師入門的自學圖書,也適合作為職業學校和社會培訓機構的電子技術入門教材。
圖書目錄
第1章 單片機快速入門 1
1.1 單片機簡介 1
1.1.1 什麼是單片機 1
1.1.2 單片機套用系統的組成及工作過程 2
1.1.3 單片機的分類 3
1.1.4 單片機的套用領域 4
1.2 單片機套用系統的開發過程 5
1.2.1 明確控制要求並選擇合適型號的單片機 5
1.2.2 設計單片機電路原理圖 5
1.2.3 製作單片機電路 6
1.2.4 用Keil軟體編寫單片機控制程式 7
1.2.5 計算機、下載(燒錄)器和單片機的連線 10
1.2.6 用燒錄軟體將程式寫入單片機 13
1.2.7 單片機電路的供電與測試 15
1.3 C51語言基礎 17
1.3.1 常量 17
1.3.2 變數 19
1.3.3 運算符 19
1.3.4 關鍵字 22
1.3.5 數組 23
1.3.6 循環語句 24
1.3.7 選擇語句 26
第2章 51單片機的硬體系統 28
2.1 8051單片機的引腳功能與內部結構 28
2.1.1 引腳功能說明 28
2.1.2 單片機與片外存儲器的連線與控制 31
2.1.3 內部結構說明 32
2.2 8051單片機I/O連線埠的結構與工作原理 35
2.2.1 P0連線埠 35
2.2.2 P1連線埠 37
2.2.3 P2連線埠 38
2.2.4 P3連線埠 38
2.3 8051單片機的存儲器 40
2.3.1 存儲器的存儲單位與編址 40
2.3.2 片內、片外程式存儲器的使用與編址 41
2.3.3 片內、片外數據存儲器的使用與編址 41
2.3.4 數據存儲器的分區 42
2.3.5 特殊功能暫存器(SFR) 44
第3章 STC89C5x系列單片機介紹 49
3.1 概述 49
3.1.1 兩種版本與封裝形式 49
3.1.2 引腳功能說明 50
3.1.3 STC89C5x系列單片機的型號命名規則 52
3.1.4 STC89C5x系列單片機常用型號的主要參數 52
3.2 STC89C5x系列單片機的I/O連線埠 53
3.2.1 I/O連線埠上電復位狀態與灌電流、拉電流 53
3.2.2 P4連線埠的使用 54
3.2.3 I/O連線埠與外部電路的連線 55
3.3 STC89C5x系列單片機的存儲器 57
3.3.1 程式存儲器 57
3.3.2 數據存儲器 57
3.3.3 特殊功能暫存器 58
第4章 51單片機編程軟體的使用 61
4.1 Keil C51軟體的基本操作 61
4.1.1 Keil C51軟體的版本及獲取 61
4.1.2 Keil C51軟體的安裝 61
4.2 程式的編寫與編譯 63
4.2.1 啟動Keil C51軟體並新建工程檔案 63
4.2.2 新建源程式檔案 65
4.2.3 編寫程式 66
4.2.4 編譯程式 67
4.3 程式的仿真與調試 69
4.3.1 軟體仿真設定 70
4.3.2 編譯程式 71
4.3.3 仿真、調試程式 71
第5章 單片機驅動LED的電路及編程 75
5.1 LED(發光二極體)介紹 75
5.1.1 外形與符號 75
5.1.2 性質 75
5.1.3 檢測 76
5.1.4 限流電阻 76
5.2 點亮單個LED的電路與程式詳解 77
5.2.1 點亮單個LED的電路 77
5.2.2 採用位操作方式點亮單個LED的程式詳解 77
5.2.3 採用位元組操作方式點亮單個LED的程式詳解 79
5.2.4 單個LED以固定頻率閃爍發光的程式詳解 80
5.2.5 單個LED以不同頻率閃爍發光的程式詳解 81
5.3 點亮多個LED的電路與程式詳解 82
5.3.1 點亮多個LED的電路 82
5.3.2 採用位操作方式點亮多個LED的程式詳解 83
5.3.3 採用位元組操作方式點亮多個LED的程式詳解 83
5.3.4 多個LED以不同頻率閃爍發光的程式詳解 84
5.3.5 多個LED左移和右移的程式詳解 85
5.3.6 LED循環左移和右移的程式詳解 86
5.3.7 LED左右移動並閃爍發光的程式詳解 88
5.3.8 採用查表方式控制LED多種形式發光的程式詳解 89
5.3.9 LED花樣發光的程式詳解 90
5.4 採用PWM方式調節LED亮度的原理與程式詳解 91
5.4.1 採用PWM方式調節LED亮度的原理 91
5.4.2 採用PWM方式調節LED亮度的程式詳解 91
第6章 單片機驅動LED數碼管的電路及編程 94
6.1 單片機驅動1位LED數碼管的電路與程式詳解 94
6.1.1 1位LED數碼管的結構與檢測 94
6.1.2 單片機驅動1位LED數碼管的電路 96
6.1.3 單個數碼管靜態顯示1個字元的程式詳解 96
6.1.4 單個數碼管動態顯示多個字元的程式詳解 97
6.1.5 單個數碼管環形轉圈顯示的程式詳解 98
6.1.6 單個數碼管顯示邏輯電平的程式詳解 98
6.2 單片機驅動8位LED數碼管的電路與程式詳解 99
6.2.1 多位LED數碼管的結構與檢測 99
6.2.2 單片機連線8位共陰極數碼管的電路 100
6.2.3 8位數碼管顯示1個字元的程式詳解 102
6.2.4 8位數碼管逐位顯示8個字元的程式詳解 103
6.2.5 8位數碼管同時顯示8個字元的程式及詳解 104
6.2.6 8位數碼管動態顯示8個以上字元的程式及詳解 104
第7章 中斷與中斷編程 106
7.1 中斷的基本概念與處理過程 106
7.1.1 中斷的基本概念 106
7.1.2 中斷的處理過程 106
7.2 中斷的系統結構與控制暫存器 107
7.2.1 中斷的系統結構 107
7.2.2 中斷源暫存器 108
7.2.3 中斷允許暫存器IE 109
7.2.4 中斷優先權控制暫存器IP 110
7.3 中斷編程 111
7.3.1 外部中斷0以低電平方式觸發中斷的程式詳解 111
7.3.2 外部中斷1以下降沿方式觸發中斷的程式詳解 112
第8章 定時器/計數器的使用及編程 115
8.1 定時器/計數器的定時與計數功能 115
8.1.1 定時器/計數器的定時功能 115
8.1.2 定時器/計數器的計數功能 116
8.2 定時器/計數器的結構和工作原理 116
8.2.1 定時器/計數器的結構 116
8.2.2 定時器/計數器的工作原理 117
8.3 與定時器/計數器相關的控制暫存器 118
8.3.1 TCON暫存器 118
8.3.2 TMOD暫存器 119
8.4 定時器/計數器的工作方式 120
8.5 定時器/計數器的套用及編程 124
8.5.1 產生1kHz方波信號的程式詳解 124
8.5.2 產生50kHz方波信號的程式詳解 125
8.5.3 產生周期為1s方波信號的程式詳解 126
第9章 按鍵電路及編程 128
9.1 獨立按鍵輸入電路與程式詳解 128
9.1.1 開關輸入抖動及解決方法 128
9.1.2 連線8個獨立按鍵和8個LED的單片機電路 129
9.1.3 一個按鍵點動控制一個LED亮滅的程式詳解 130
9.1.4 一個按鍵鎖定控制一個LED亮滅的程式詳解 130
9.1.5 4路搶答器的程式詳解 131
9.1.6 獨立按鍵控制LED和LED數碼管的單片機電路 132
9.1.7 兩個按鍵控制1位數字增、減並用8位數碼管顯示的程式詳解 133
9.1.8 兩個按鍵控制多位數字增、減並用8位數碼管顯示的程式詳解 135
9.1.9 按鍵長按與短按產生不同控制效果的程式詳解 137
9.1.10 8個獨立按鍵控制LED和LED數碼管顯示的程式詳解 139
9.2 矩陣鍵盤輸入電路與程式詳解 141
9.2.1 單片機16鍵矩陣鍵盤和8位數碼管的電路 141
9.2.2 矩陣鍵盤行列掃描方式輸入及顯示的程式詳解 143
9.2.3 採用中斷方式的矩陣鍵盤行列掃描輸入的電路及程式詳解 146
9.2.4 矩陣鍵盤密碼鎖的程式詳解 150
第10章 點陣和液晶顯示屏的使用及編程 155
10.1 雙色LED點陣的使用及編程 155
10.1.1 雙色LED點陣的基礎知識 155
10.1.2 單片機配合74HC595晶片驅動雙色LED點陣的電路 162
10.1.3 雙色點陣顯示一種顏色字元的程式詳解 163
10.1.4 雙色點陣交替顯示兩種顏色字元的程式詳解 166
10.1.5 字元“0”~“9”移入和移出雙色點陣的程式詳解 168
10.2 1602字元型液晶顯示屏的使用及編程 171
10.2.1 1602字元型液晶顯示屏的基礎介紹 171
10.2.2 單片機驅動1602字元型液晶顯示屏的電路 176
10.2.3 1602字元型液晶顯示屏靜態顯示字元的程式詳解 177
10.2.4 1602字元型液晶顯示屏逐個顯示字元的程式詳解 179
10.2.5 1602字元型液晶顯示屏字元滾動顯示的程式詳解 180
10.2.6 矩陣鍵盤輸入與1602字元型液晶顯示屏顯示的電路及程式詳解 181
第11章 步進電動機的使用及編程 186
11.1 步進電動機與驅動晶片介紹 186
11.1.1 步進電動機 186
11.1.2 驅動晶片 189
11.1.3 五線四相步進電動機 191
11.2 單片機驅動步進電動機的電路及編程 192
11.2.1 單片機驅動步進電動機的電路 192
11.2.2 用單四拍方式驅動步進電動機正轉的程式詳解 193
11.2.3 用雙四拍方式驅動步進電動機自動正反轉的程式詳解 194
11.2.4 用外部中斷控制步進電動機正反轉的程式詳解 195
11.2.5 用按鍵控制步進電動機啟動、加速、減速、停止的程式詳解 197
第12章 串列通信的使用及編程 202
12.1 串列通信的基礎知識 202
12.1.1 並行通信和串列通信 202
12.1.2 串列通信的兩種方式 202
12.1.3 串列通信的數據傳送方向 204
12.2 串列通信口的結構與原理 205
12.2.1 串列通信口的結構 205
12.2.2 串列通信口的工作原理 206
12.3 串列通信口的控制暫存器 206
12.3.1 串列控制暫存器 206
12.3.2 電源控制暫存器 207
12.4 4種工作方式與波特率 208
12.4.1 方式0 208
12.4.2 方式1 209
12.4.3 方式2 210
12.4.4 方式3 210
12.4.5 波特率 210
12.5 串列通信的套用編程 212
12.5.1 利用方式0實現產品計數顯示的電路及編程 212
12.5.2 利用方式1實現雙機通信的電路及編程 214
第13章 I2C匯流排通信的使用及編程 217
13.1 I2C匯流排的基礎知識 217
13.1.1 I2C匯流排的通信協定 217
13.1.2 I2C匯流排的數據傳送格式 218
13.2 I2C匯流排存儲器24C02 219
13.2.1 外形與引腳功能 219
13.2.2 器件地址 220
13.2.3 讀/寫操作 220
13.3 單片機與24C02的I2C匯流排通信電路及編程 223
13.3.1 模擬I2C匯流排通信的程式詳解 223
13.3.2 利用I2C匯流排從24C02讀寫一個數據的電路及程式詳解 226
13.3.3 利用I2C匯流排從24C02讀寫多個數據的電路及程式詳解 228
13.3.4 利用24C02存儲按鍵操作信息的電路及程式詳解 229
第14章 A/D(模/數)與D/A(數/模)轉換電路及編程 233
14.1 A/D與D/A轉換 233
14.1.1 A/D轉換 233
14.1.2 D/A轉換 235
14.2 A/D與D/A轉換晶片 235
14.2.1 外形與引腳功能說明 236
14.2.2 器件地址和器件功能設定 236
14.2.3 單端輸入與差分輸入 237
14.3 A/D和D/A轉換電路及編程 238
14.3.1 單片機、PCF8591晶片與8位數碼管構成的A/D和D/A轉換及顯示電路 238
14.3.2 A/D轉換輸出顯示的程式詳解 239
14.3.3 4路電壓測量顯示的程式詳解 241
14.3.4 D/A轉換輸出顯示的程式詳解 244
第15章 電路繪圖設計軟體入門 247
15.1 概述 247
15.2 Protel 99 SE基礎知識 247
15.2.1 Protel 99 SE的組成 247
15.2.2 Protel 99 SE的設計電路流程 248
15.3 Protel 99 SE使用入門 248
15.3.1 資料庫檔案的創建、關閉與打開 248
15.3.2 Protel 99 SE的設計界面 251
15.3.3 檔案的管理 251
15.3.4 系統參數的設定 256
第16章 設計電路原理圖 258
16.1 電路原理圖編輯器概述 258
16.1.1 電路原理圖編輯器的界面介紹 258
16.1.2 設定圖紙大小 262
16.1.3 設定圖紙方向、標題欄、框線和顏色 263
16.1.4 設定圖紙格線 265
16.1.5 設定圖紙檔案信息 265
16.1.6 設定游標與格線形狀 265
16.1.7 設定系統字型 266
16.2 電路原理圖的設計 267
16.2.1 操作元件庫 268
16.2.2 查找元件 269
16.2.3 放置元件 270
16.2.4 編輯元件 272
16.2.5 繪製導線、節點和匯流排 281
16.2.6 放置電源符號 288
16.2.7 放置輸入/輸出連線埠 289
16.2.8 查找、替換與重排元件標號 291
16.3 圖形的繪製 294
16.3.1 繪製直線 294
16.3.2 繪製矩形 294
16.3.3 繪製多邊形 295
16.3.4 繪製橢圓弧線 296
16.3.5 繪製橢圓 297
16.3.6 繪製扇形 298
16.3.7 繪製曲線 299
16.4 文本、圖片的套用 300
16.4.1 插入與設定文本 300
16.4.2 插入與設定圖片 301
16.5 層次原理圖的設計 302
16.5.1 層次原理圖的設計思路 303
16.5.2 由上向下設計層次原理圖 305
16.5.3 由下向上設計層次原理圖 310
第17章 製作新元件 311
17.1 元件庫編輯器概述 311
17.2 新元件的製作與使用 313
17.2.1 繪製新元件 313
17.2.2 修改已有元件 316
17.2.3 繪製複式元件 319
17.2.4 使用新元件 321
17.3 報表的生成與元件庫的管理 322
17.3.1 生成報表 322
17.3.2 管理元件庫 324
第18章 手工設計PCB圖 327
18.1 PCB設計基礎 327
18.1.1 PCB的基礎知識 327
18.1.2 PCB的設計過程 330
18.1.3 PCB設計編輯器的操作 330
18.1.4 PCB的工作層設定 332
18.1.5 PCB設計編輯器的參數設定 336
18.2 開始手工設計PCB圖 341
18.2.1 放置對象 341
18.2.2 手工布局 354
18.2.3 手工布線 361
第19章 自動設計PCB圖 363
19.1 基礎知識 363
19.1.1 PCB圖的自動設計流程 363
19.1.2 利用電路原理圖生成網路表 364
19.2 開始自動設計PCB圖 364
19.2.1 自動規劃PCB圖 364
19.2.2 裝載元件封裝庫和網路表 368
19.2.3 自動布局元件 372
19.2.4 手工調整元件布局 373
19.2.5 自動布線 374
19.2.6 手工調整布線 379
19.3 顯示PCB圖 384
19.3.1 單層顯示模式 384
19.3.2 三維顯示模式 385
第20章 製作新元件封裝 387
20.1 啟動元件封裝庫編輯器 387
20.2 製作元件封裝 388
20.2.1 利用手工製作元件封裝 388
20.2.2 利用嚮導製作元件封裝 391
20.3 管理元件封裝 393