內(nèi)容提要本書以MCS-51單片機系列89S51為例,采用項目式的設計方式進行編寫,全書分為五個分任務項目和一個綜合實訓項目。分別為數(shù)制初步、單片機系統(tǒng)設計、燈光控制設計、報警系統(tǒng)設計、醫(yī)院呼叫系統(tǒng)。書中分別用匯編語言和C語言對項目設計進行了舉例,結合單片機開發(fā)板進行講解。本書可作為高職高專電子類專業(yè)的單片機課程教材,也可以作為自學單片機的初學人員參考用書。為方便教學,本書配有免費電子課件、思考與習題詳解、模擬試卷及答案等,凡選用本書作為授課教材的學校,均可來電免費索取。咨詢電話:010-88379375;Email:cmpgaozhi@sina.com。
單片機已經(jīng)滲透到我們生產(chǎn)、生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。因此,無論是信息技術專業(yè),還是自動化控制技術專業(yè),單片機技術課程在專業(yè)培養(yǎng)中都尤為重要。單片機技術實踐性極強,理論與實踐結合緊密。這些年,我們根據(jù)課程的特點,采用了項目式教學,并在校內(nèi)外各種競賽中初見成效。
本書有如下特點:1)項目式教學。以典型的項目為載體,將知識點分解到具體任務中,通過完成任務,學習任務相關知識與技能。部分有興趣的同學還可以通過提高任務,鞏固所學知識。
2)雙語言編寫。根據(jù)不同專業(yè)的編程需要,除了擴展項目外,本書其他項目均同時采用了匯編語言、C語言編寫程序。
3)硬件與仿真結合。對于最小系統(tǒng)可完成的項目,均采用了以硬件為對象的程序編寫,同時進行仿真驗證,對于少數(shù)硬件與仿真的差別也做了簡單介紹。
本書由廣西機電職業(yè)技術學院曹華、林勇堅任主編,譚艷梅和秦培林任副主編,參加編寫的還有方羽、蔣朝寧和馬子龍。具體分工為:曹華、林勇堅對本書的編寫思路與大綱進行總體策劃,指導全書的編寫,對全書統(tǒng)稿,并完成了項目1、項目3、項目6和附錄D的編寫;譚艷梅協(xié)助完成統(tǒng)稿工作,并編寫項目5、附錄A和附錄B;秦培林協(xié)助完成統(tǒng)稿工作,并編寫項目7;方羽編寫項目4;蔣朝寧編寫項目2;馬子龍編寫擴展項目和附錄C。對向本書編寫提供幫助的人士表示感謝。
因編者水平有限,書中難免存在錯誤,懇請讀者提出寶貴意見。
編者
前言
項目1 數(shù)制初步 1
任務1 數(shù)制及其轉換 1
1. 1. 1 幾種常用數(shù)制 1
1. 1. 2 不同數(shù)制之間的相互轉換 3
任務2 機器數(shù)與真值 5
1. 2. 1 計算機的帶符號數(shù) 5
1. 2. 2 計算機的溢出 6
1. 2. 3 編碼 9
項目小結 10
練習一 10
項目2 單片機系統(tǒng)設計 12
任務1 單片機開發(fā)板電路設計 12
2. 1. 1 單片機初步介紹 12
2. 1. 2 單片機引腳排列 17
2. 1. 3 存儲器與特殊功能寄存器 23
2. 1. 4 單片機的并行口 28
2. 1. 5 單片機最小應用系統(tǒng) 37
2. 1. 6 單片機應用系統(tǒng)電路 42
2. 1. 7 從傳統(tǒng)8051 單片機過渡到
STC12C5A60S2 系列單片機 44
任務2 單片機開發(fā)板仿真電路設計 44
2. 2. 1 軟件的安裝 45
2. 2. 2 原理圖的繪制 46
項目小結 49
練習二 49
項目3 燈光控制設計 53
任務1 編譯軟件使用 53
3. 1. 1 軟件安裝 53
3. 1. 2 軟件的使用 54
任務2 跑馬燈設計 59
3. 2. 1 關于P1 口 59
3. 2. 2 延時子程序的編寫 59
3. 2. 3 任務實施步驟 59
任務3 交通燈設計 64
3. 3. 1 中斷概念 64
3. 3. 2 中斷系統(tǒng) 64
3. 3. 3 任務實施步驟 70
項目小結 75
練習三 76
項目4 報警系統(tǒng)設計 79
任務1 蜂鳴器控制(軟件延時) 79
4. 1. 1 蜂鳴器工作原理 79
4. 1. 2 單片機對蜂鳴器的控制 80
4. 1. 3 任務實施步驟 80
任務2 蜂鳴器控制(定時器控制) 82
4. 2. 1 結構與功能 82
4. 2. 2 定時器/計數(shù)器的控制寄存器 83
4. 2. 3 定時器/計數(shù)器的工作方式 86
4. 2. 4 定時器/ 計數(shù)器的初始化編程
步驟 88
4. 2. 5 定時器/計數(shù)器的計數(shù)初值 89
4. 2. 6 任務實施步驟 89
任務3 音樂播放控制 94
4. 3. 1 音調(diào) 95
4. 3. 2 節(jié)拍 96
4. 3. 3 任務實施步驟 97
項目小結 101
練習四 102
項目5 醫(yī)院呼叫系統(tǒng)設計 104
任務1 數(shù)碼管顯示 104
5. 1. 1 數(shù)碼管的基本工作原理 105
5. 1. 2 任務實施步驟 106
任務2 簡易按鍵控制 112
5. 2. 1 鍵盤及接口 112
5. 2. 2 任務實施步驟 116
任務3 串行通信 119
5. 3. 1 串行通信的概念 119
5. 3. 2 串行通信技術 120
5. 3. 3 串行通信的接口電路 121
5. 3. 4 單片機串行口的結構與控制
寄存器 122
5. 3. 5 任務實施步驟 130
任務4 醫(yī)院病人呼叫系統(tǒng) 133
項目小結 136
練習五 136
項目6 電子儀器設計 138
任務1 數(shù)字電壓表設計(AT89S51
芯片) 138
6. 1. 1 ADC0809 的主要特性 139
6. 1. 2 ADC0809 的內(nèi)部結構和外部
引腳 139
6. 1. 3 任務實施步驟 140
任務2 數(shù)字電壓表設計(STC 芯片) 146
6. 2. 1 STC12C5A60S2 單片機的內(nèi)部
ADC 結構 146
6. 2. 2 ADC 相關寄存器 146
6. 2. 3 任務實施步驟 149
任務3 信號發(fā)生器設計 152
6. 3. 1 單片機產(chǎn)生波形的原理 153
6. 3. 2 DAC0832 的內(nèi)部結構與引腳
功能 153
6. 3. 3 任務實施步驟 154
項目小結 156
練習六 156
項目7 電子溫度計的設計 158
任務1 液晶顯示 158
7. 1. 1 LCD1602 的引腳 159
7. 1. 2 LCD1602 的控制指令 160
7. 1. 3 LCD1602 模塊的讀寫操作時序 161
7. 1. 4 任務實施步驟 163
任務2 溫度計的設計 168
7. 2. 1 DS18B20 的引腳 168
7. 2. 2 DS18B20 的通信時隙 169
7. 2. 3 任務實施步驟 171
項目小結 181
練習七 181
擴展項目 俄羅斯方塊游戲的設計 182
任務1 點陣顯示 182
8. 1. 1 LED 點陣的結構 182
8. 1. 2 LED 點陣顯示原理 182
8. 1. 3 任務實施步驟 183
任務2 俄羅斯方塊游戲設計(點陣) 187
8. 2. 1 俄羅斯方塊游戲的基本規(guī)則 188
8. 2. 2 任務實施步驟 188
任務3 俄羅斯方塊游戲設計
(LCD12864) 200
8. 3. 1 LCD12864 模塊引腳說明 200
8. 3. 2 LCD12864 模塊指令說明 200
8. 3. 3 LCD12864 的寫操作 202
8. 3. 4 任務實施步驟 202
附錄 213
附錄A 單片機匯編語言指令表 213
附錄B ASCII 字符代碼表 217
附錄C 單片機開發(fā)板 218
附錄D STC-ISP 下載控制軟件使用
說明 220
參考文獻 228