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