本書從單片機51系列入手,系統介紹了單片機的知識,包括單片機的內部結構、指令系統、中斷系統、定時器/計數器、模擬量輸入與實時控制輸出等,進而介紹了單片機控制技術。本書遵循以工作任務(項目)為導向的教學方法,每個學習情境中都設有若干個具體工作任務,通過這些任務的完成,使學生對單片機知識有一個總體的了解。
本書可作為高職高專院校機電一體化、電氣自動化、新能源等相關專業的教材,也可作為中職學校機電一體化、電氣自動化、新能源等相關專業的教材。
前言
本教材第一版是全國機械職業教育教學指導委員會新能源裝備技術專業指導委員會組織的《新能源系列教材》之一,是2011年全國職業院校技能大賽光伏發電系統安裝與調試項目和2012年全國職業院校技能大賽風光互補發電系統安裝與調試項目的理論課程配套教材,在國內相關專業產生了較大影響。教材出版后已使用了若干輪,教師和學生提出了一些問題,根據“十二五”職業教育國家規劃教材選題修訂建議書的要求,保持與行業單片機控制技術同步發展,現對《單片機控制技術與應用》教材進行修訂,主要在內容上加入了單片機逆變技術內容,體現單片機控制與新能源技術結合的特性,控制系統的boost電路單片機控制是目前應用比較廣的控制方案,修訂過程中加入了軟件、硬件內容。
“單片機控制技術”是新能源相關專業、機電一體化專業、電氣自動化專業的專業基礎課程,特別是新能源等相關專業的核心課程。本教材從基礎的單片機51系列入手,與電工基礎、電工電子技術、電力電子技術等前序課程緊密結合,系統介紹了單片機控制系統的知識。本教材遵循以工作任務(項目)為導向的教學方法,每個學習情境都設有若干個具體工作任務,通過這些任務的完成,使學生對單片機有總體的了解,也可增強學生的學習興趣。希望通過本教材的學習,學生能夠對單片機技術的應用建立清晰的認知,掌握其實用技術,具備在實踐中進一步應用的能力。
“單片機控制技術”是新能源類專業教育教學資源庫18門核心課程之一,是新能源類專業基礎課程中應用比較廣、涵蓋專業知識面比較寬的課程。本教材采用手機APP二維碼調用資源庫中的視頻、微課等內容,充分滿足學生、教師、企業人員、社會學習者時時、處處學習的需求。教學課件可從化學工業出版社教學資源網www.cipedu.com.cn免費下載。
本教材借鑒國內外計算機科學與技術學科和計算機基礎課程體系的研究成果,努力反映計算機科學技術的最新成果和發展趨勢,強調理論與實踐緊密結合,注重能力和綜合素質的培養,通過實例講解原理和方法,引導學生掌握理論方法的實際運用。
《單片機控制技術與應用》編寫組的全體成員感謝天津市單片機協會給予的大力支持,為本書編寫提供了大量的資料和實例,并感謝化學工業出版社的鼎力支持。
本書可以作為職業院校機電一體化、電氣自動化、新能源等相關專業的教材及參考書,并對光電子、電氣自動化、機電等相關領域有一定的參考價值。
本教材由天津輕工職業技術學院劉靖、李云梅任主編,劉靖負責全書規劃及統稿等工作,李娜、劉靖完成學習情境一、二的編寫,周樹青、劉靖完成學習情境三、四的編寫,翟永珺、李云梅完成學習情境五、六的編寫,張潤華、李云梅完成學習情境七的編寫,劉靖、李云梅完成學習情境八、十的編寫,劉曉英、李云梅完成學習情境九的編寫,王春媚完成學習情境十一的編寫并制作了全書的二維碼。李云梅、孟秩穎完成部分審校和修改工作。
雖經過修訂,但是限于編者水平所限,書中定有不少疏漏,懇請廣大讀者不吝賜教。
《單片機控制技術與應用》編寫組
2017年4月
第一版前言
“單片機控制技術”是機電一體化、電氣自動化、新能源等相關專業的專業基礎課程。本書從基礎的單片機51系列入手,與電工基礎、電工電子技術、電力電子技術等前序課程緊密結合,系統地介紹了單片機控制系統的知識。本書遵循以工作任務(項目)為導向的教學方法,每個學習情境都設有若干個具體工作任務,通過這些任務的完成,使學生對單片機知識有總體的了解,也使學生增強了學習興趣。通過本教材的學習,能夠對單片機技術的應用建立清晰的認知,掌握其實用技術,具備在實踐中進一步應用的能力。
本書借鑒國內外計算機科學與技術學科和計算機基礎課程體系的研究成果,努力反映計算機科學技術的最新成果和發展趨勢,強調理論與實踐緊密結合,注重能力和綜合素質的培養,通過實例講解原理和方法,引導學生掌握理論方法的實際運用。
《單片機控制技術與應用》編寫組的全體成員感謝天津市單片機協會給予的大力支持,為本書編寫提供了大量的資料和實例,并感謝化學工業出版社的鼎力支持。
本書可以作為高職高專院校機電一體化、電氣自動化、新能源等相關專業的教材及參考書,也可作為中職學校機電一體化、電氣自動化、新能源等相關專業的教材及參考書,并對光電子、電氣自動化、機電等相關領域的工程技術人員有一定的參考價值。
本書由劉靖、李云梅任主編,劉靖負責全書規劃及統稿等工作,李娜完成情境一、二的編寫,周樹青、劉靖完成情境三、四的編寫,翟永珺完成情境五、六的編寫,張潤華完成情境七的編寫,劉靖完成情境八、十的編寫,劉曉英完成情境九的編寫,李云梅、孟秩穎完成部分審校和修改工作。
由于編者水平所限,書中定有不少疏漏和不當,懇請廣大讀者不吝賜教。
《單片機控制技術與應用》編寫組
2012年6月
劉靖,天津輕工職業技術學院,正高工,新能源教指委副主任委員
2003年至2007年任天津市隆盛家用電器有限公司副總工程師、總工程師兼任天津市隆泰冷暖設備制造有限公司廠長,2010年經過高級職稱評審委員會認定具備正高級工程師資格;
2007年6月至今,任天津輕工職業技術學院自動化系副主任
學習情境一 單片機的發展和應用領域 1
1.1 初識單片機 1
1.1.1 什么是單片機 1
1.1.2 單片機發展歷史與高速SOC單片機C8051F 2
1.1.3 Cygnal C8051F系列單片機特點 2
1.1.4 有關C8051系列CPU 3
1.2 單片機介紹 4
1.2.1 MCS-51單片機基本功能介紹 5
1.2.2 CIP-51單片機基本功能介紹 5
1.3 單片機學習相關知識 7
1.3.1 數制和編碼 7
1.3.2 邏輯運算 9
1.3.3 真值與機器數 9
1.3.4 原碼、反碼、補碼 9
1.3.5 BCD碼 10
1.3.6 常用邏輯元件及功率輸出元件 11
思考題 15
學習情境二 單片機內部結構 16
2.1 MCS-51單片機基本組成及引腳功能 16
2.1.1 單片機的基本組成 16
2.1.2 單片機的引腳及其功能 17
2.1.3 MCS-51單片機的存儲器 19
2.2 CIP-51單片機基本功能介紹 26
2.3 單片機復位 27
2.3.1 通電復位 28
2.3.2 斷電復位 28
2.3.3 外部復位 29
2.3.4 軟件強制復位 29
2.3.5 時鐘丟失檢測器復位 29
2.3.6 比較器0復位 29
2.3.7 外部CNVSTR引腳復位 30
2.3.8 看門狗定時器復位 30
思考題 31
學習情境三 單片機指令系統 32
3.1 指令 32
3.2 程序設計語言 32
3.3 Cygnal(80C51)單片機指令 33
3.4 匯編語言的特點 37
3.5 匯編指令的格式 37
3.6 指令系統符號的意義 38
3.7 尋址方式 38
3.8 Cygnal系列單片機指令 39
3.8.1 數據傳送和交換類指令 39
3.8.2 算術操作類指令(24) 42
3.8.3 邏輯運算指令 45
3.8.4 控制轉移類指令 46
3.8.5 位操作指令 48
思考題 49
學習情境四 實現交通燈自動控制 53
4.1 匯編語言程序設計概述 53
4.2 偽指令 54
4.3 單片機匯編語言程序的基本結構形式 54
4.4 Cygnal單片機匯編語言程序設計舉例 60
思考題 67
學習情境五 在電機控制中應用中斷 68
5.1 中斷系統的概述 68
5.1.1 中斷原理介紹 68
5.1.2 使用中斷的好處 69
5.2 單片機中斷系統結構 70
5.2.1 中斷源 70
5.2.2 中斷控制系統中的特殊功能寄存器(SFR) 71
5.3 中斷響應 74
5.3.1 中斷響應條件 74
5.3.2 中斷響應過程 74
5.3.3 中斷響應時間 74
5.4 外部中斷方式的選擇 75
5.4.1 電平觸發方式 75
5.4.2 脈沖觸發方式 75
5.5 中斷程序設計 75
5.5.1 中斷初始化程序 75
5.5.2 中斷服務程序 76
思考題 77
學習情境六 電機轉速控制與定時器/計數器 79
6.1 定時器/計數器工作原理及結構 79
6.1.1 定時器/計數器結構 80
6.1.2 定時器/計數器控制寄存器 81
6.2 定時器/計數器工作方式 82
6.2.1 方式0:13位定時器/計數器 82
6.2.2 方式1:16位定時器/計數器 83
6.2.3 方式2:8位自動重裝載的定時器/計數器 83
6.2.4 方式3:兩個8位定時器/計數器(僅定時器0) 84
6.2.5 定時器/計數器的定時/計數范圍 85
6.3 單片機定時器/計數器的應用 85
6.3.1 定時器/計數器的編程和使用方法 85
6.3.2 定時器/計數器的應用實例 86
6.4 門控位的應用 90
思考題 92
學習情境七 模擬量輸入與實時控制輸出 94
7.1 模擬量與數字量概述 94
7.2 A/D轉換原理 95
7.3 A/D轉換器及參數指標 96
7.4 典型A/D轉換器芯片ADC0809 99
7.4.1 ADC0809的內部結構及工作原理 99
7.4.2 ADC0809典型應用 101
7.4.3 應用舉例 103
7.5 D/A 轉換接口電路 106
7.5.1 D/A 轉換器的技術性能指標 106
7.5.2 典型D/A 轉換器芯片DAC0832 107
學習情境八 PWM波輸出 109
8.1 PWM波的產生原理 110
8.2 PWM波變頻控制原理 111
8.2.1 PWM脈寬調制基本知識 111
8.2.2 軟件產生PWM波的調速原理 112
8.2.3 實現任務的軟件方式之一 112
8.3 Cygnal可編程計數器陣列 115
8.4 Cygnal的PCA計數器/定時器 115
8.5 Cygnal的捕捉/比較模塊 117
8.5.1 邊沿觸發的捕捉方式 118
8.5.2 軟件定時器(比較)方式 118
8.5.3 高速輸出方式 119
8.5.4 頻率輸出方式 120
8.5.5 8位脈寬調制器方式 121
8.5.6 16位脈寬調制器方式 121
8.6 PCA0寄存器說明 122
思考題 125
學習情境九 串行外設通信SPI0與UART 126
9.1 串行通信基礎知識 126
9.2 MCS-51單片機串行口結構及工作方式 128
9.3 串行口的應用 132
9.4 串行外設接口總線(SPI0) 138
9.4.1 信號說明 138
9.4.2 SPI0操作 139
9.4.3 串行時鐘時序 141
9.4.4 SPI特殊功能寄存器 141
9.5 UART0 144
9.5.1 UART0工作方式 144
9.5.2 多機通信 148
9.5.3 幀錯誤和傳輸錯誤檢測 149
9.5.4 UART0特殊功能寄存器 150
思考題 151
學習情境十 集成開發環境 153
10.1 系列單片機下載使用 153
10.1.1 ByteBlaster下載線電路 153
10.1.2 AT89S系列的ISP方法 153
10.2 AVR系列的ISP方法 155
10.3 工具箱 156
10.4 硬件連接 156
10.5 軟件安裝 156
10.6 Silabs集成開發環境 157
10.6.1 系統要求 157
10.6.2 匯編程序和連接程序 157
10.6.3 評估版C51C編譯器 157
10.6.4 在SilabsIDE上使用Keil8051軟件工具 157
10.6.5 源程序實例 158
10.6.6 寄存器定義文件(頭文件) 158
10.7 目標板 158
10.7.1 系統時鐘源 158
10.7.2 按鍵和發光二極管 159
10.7.3 串口J5 159
10.7.4 模擬輸入輸出口J11和J20 159
10.7.5 外擴I/O連接器(J24) 160
10.7.6 電源檢測器禁止跳線器J23 161
10.7.7 目標板JTAG接口J4 161
10.7.8 I/O 接口連接器(J12~J19) 161
10.7.9 VREF連接器(J22) 162
10.8 串行適配器 162
10.9 U-EC5操作指南 162
10.9.1 U-EC5調試適配器操作說明 163
10.9.2 應用專用軟件(U-EC5中文編程軟件)快速燒錄C8051FMCU操作說明 167
10.10 在5V系統中應用3.3V Cygnal單片機解決方案 171
10.10.1 電源選擇 171
10.10.2 用5V輸出驅動3V輸入 172
10.10.3 用3V輸出驅動5V輸入 172
學習情境十一 單片機知識擴展 174
11.1 嵌入式系統 174
11.2 ARM 開發基礎知識 174
11.2.1 ARM簡介 174
11.2.2 ARM微處理器特點 175
11.2.3 ARM應用領域 175
11.2.4 ARM內核 175
11.2.5 開發工具 176
11.2.6 開發流程 178
11.3 DSP基礎知識 179
11.3.1 DSP芯片 179
11.3.2 DSP系統的運算量 180
11.3.3 DSP系統的特點 181
11.3.4 DSP芯片的應用 181
參考文獻 182