本教材內容主要包括:認識單片機及其開發工具、制作單片機輸出控制電路、MCS-51單片機及其指令系統、制作LED數碼管顯示電路、制作LED點陣顯示電路、外部中斷的應用、定時器/計數器的應用、A/D轉換電路的應用和制作單片機與PC機串行口收發電路,每個內容均包括基本知識和技能實訓兩大部分。
苑毅畢業后,一直在蘭州文理學院電氣自動化系從事教學工作,承擔供用電技術、電力工程技術、電氣自動化技術、通信技術等專業主干課程的授課工作。
項目一 認識單片機及其開發工具1
項目基本知識1
知識一 認識單片機1
一、單片機及單片機應用系統1
二、單片機中的數制3
三、MCS-51單片機簡介4
知識二 認識常用單片機開發工具7
一、仿真器7
二、編程器7
三、ISP下載線8
四、Keil C開發軟件簡介8
項目技能實訓9
技能實訓一 制作單片機*小應用系統9
一、單片機*小應用系統簡介9
二、制作單片機*小應用系統10
技能實訓二 集成開發軟件Keil C的基本操作11
一、程序設計語言簡介12
二、集成開發軟件Keil C的基本操作12
技能實訓三 向單片機寫入程序17
一、使用編程器燒寫程序18
二、使用下載線下載程序20
技能實訓四 自制STC單片機下載線23
一、電路原理圖23
二、電路制作24
項目二 制作單片機輸出控制電路26
項目基本知識26
知識一 LED與單片機接口電路26
一、MCS-51單片機I/O口簡介26
二、LED接口電路28
知識二 匯編語言程序結構及相關指令29
一、匯編語言程序結構29
二、相關指令31
知識三 音頻接口電路和繼電器接口電路33
一、音頻接口電路33
二、繼電器與單片機接口電路34
項目技能實訓35
技能實訓一 制作LED控制電路35
一、硬件電路制作36
二、程序設計38
技能實訓二 制作音頻控制電路41
一、硬件電路制作41
二、程序設計43
技能實訓三 制作直流電動機控制電路44
一、硬件電路設計45
二、程序設計47
項目三 MCS-51單片機及其指令系統50
知識一 MCS-51單片機基礎50
一、MCS-51單片機內部結構及功能部件50
二、MCS-51單片機內部存儲器及存儲空間51
知識二 MCS-51單片機指令系統56
一、相關符號約定56
二、MCS-51單片機指令系統分類介紹57
三、偽指令72
項目四 制作LED數碼管顯示電路74
項目基本知識74
知識一 七段LED數碼管及其接口電路74
一、七段LED數碼管簡介74
二、數碼管字形段碼75
三、數碼管的靜態顯示方式76
四、數碼管的動態掃描顯示方式77
知識二 鍵盤接口電路及編程80
一、獨立式按鍵80
二、矩陣式鍵盤82
項目技能實訓84
技能實訓一 LED數碼管顯示器的識別與檢測84
一、數碼管種類和結構84
二、數碼管的型號85
三、LED數碼管的檢測方法86
技能實訓二 制作一位LED數碼計數牌88
一、硬件電路制作89
二、程序設計91
三、程序的調試與下載92
技能實訓三 制作3位LED數碼計數牌93
一、硬件電路制作93
二、程序設計95
三、程序的調試與下載97
項目五 制作LED點陣顯示電路99
項目基本知識99
知識一 LED點陣顯示模塊及其接口電路99
一、LED點陣顯示模塊簡介99
二、LED點陣顯示模塊的結構100
三、LED點陣顯示模塊的接口及編程101
項目技能實訓104
技能實訓一 點陣顯示模塊的識別與檢測104
一、手工焊接一個8×8LED點陣104
二、LED點陣顯示模塊的識別和檢測105
技能實訓二 制作點陣顯示電路(靜止及滾動顯示)106
一、硬件電路制作106
二、程序設計108
項目六 外部中斷系統的應用115
項目基本知識115
知識一 認識MCS-51單片機中斷系統115
一、中斷的概念115
二、MCS-51單片機的中斷系統117
三、外部中斷應用舉例122
項目技能實訓123
技能實訓一 外部中斷試驗123
一、硬件電路制作124
二、程序設計125
三、程序調試與下載127
技能實訓二 制作家用地震報警器127
一、硬件電路制作128
二、程序設計130
三、程序調試與燒寫131
項目七 定時器/計數器的應用133
項目基本知識133
知識一 認識MCS-51單片機定時器/計數器133
一、定時器/計數器簡介133
二、定時器/計數器的方式和控制寄存器135
三、定時器/計數器的工作方式136
四、定時器/計數器應用舉例138
項目技能實訓141
技能實訓一 制作1秒定時閃爍電路141
一、硬件電路制作141
二、程序設計142
三、程序的調試與下載144
技能實訓二 制作數字時鐘145
一、硬件電路制作145
二、程序設計147
三、程序的調試與下載151
項目八 A/D轉換電路的應用153
項目基本知識153
知識一 系統擴展153
一、MCS-51單片機擴展的原理153
二、外部設備的編址156
知識二 認識A/D轉換電路156
一、A/D轉換電路簡介156
二、A/D轉換集成電路ADC0809簡介157
三、ADC0809和單片機接口電路159
項目技能實訓161
技能實訓一 制作數字電壓表161
一、硬件電路制作161
二、程序設計164
技能實訓二 制作電子溫度計166
一、LM35集成電路溫度傳感器166
二、硬件電路設計167
三、程序設計168
項目九 串行通信口的應用172
項目基本知識172
知識一 認識MCS-51單片機的串行通信口172
一、串行通信的基本知識172
二、MCS-51單片機的串行通信口173
知識二 單片機與PC的通信178
一、RS-232串口電平特性及接口標準178
二、TTL電平與EIA電平的轉換179
三、單片機與PC串行接口電路180
項目技能實訓181
技能實訓 制作單片機與PC串行口通信電路181
一、硬件電路制作181
二、程序設計183
知識拓展 一、糾錯技術186
知識拓展 二、RS-232串行接口標準186
參考文獻189
Cy:進位標志。在進行加法運算且當最高位(B7位)有進位時,或執行減法運算且最高位有借位時,Cy為1;反之為0。
AC:輔助進位標志。在進行加法運算且當B3位有進位,或執行減法運算且B3位有借位時,AC為1;反之為0。
RS1、RSO:工作寄存器組選擇位,前面已介紹過。
FO:用戶標志位,可通過位操作指令將該位置1或清0。
PSW.1:保留位,用戶可以自定義使用。
OV:溢出標志。在計算機內,帶符號數一律用補碼表示。在8位二進制中,補碼所能表示的范圍是—128~+127,而當運算結果超出這一范圍時,OV標志為1,即溢出;反之,為0。
P:奇偶標志。該標志位始終體現累加器Acc中“1”的個數的奇偶性。如果累加器Acc中“1”的個數為奇數,則P位置1;當累加器A中“1”的個數為偶數(包括0個)時,P位為“0”。
④數據指針DPTR。
數據指針DPTR是單片機中唯一一個用戶可操作的16位寄存器,由DPH(數據指針高8位)和DPL(數據指針低8位)組成,既可以按16位寄存器使用,也可以將兩個8位寄存器分開使用。
⑤I/O端口寄存器。
P0、P1、P2、P3口寄存器實際上就是P0口~P3口對應的I/O端口鎖存器,用于鎖存通過端口輸出的數據。
4.片內程序存儲器
程序存儲器主要用來存放程序,但有時也會在其中存放數據表(如數碼管段碼表等)。
STC89C51RC芯片內有4K的程序存儲器單元,其地址為0000H~0FFFH。在程序存儲器中地址為0000H~002AH的43個單元在使用時是有特殊規定的。