本書為 “十三五” 職業(yè)教育規(guī)劃教材。
本書共分為兩部分,第yi部分為C 語言與數(shù)據(jù)結構篇, 包括數(shù)組、 結構體及枚舉類型、 函數(shù)與預處理命令、指針與鏈表;第二部分為庫開發(fā)項目實戰(zhàn)篇,包括 ARM 嵌入式開發(fā)環(huán)境 RVMDK 的使用、 家用燈光照明系統(tǒng)的
設計、家用門禁報警系統(tǒng)的設計、家用通風系統(tǒng)的設計、家用溫度檢測系統(tǒng)的設計、 家用廚房燃氣監(jiān)控系統(tǒng)設計、家用密碼存儲系統(tǒng)設計、家用植物種植智能控制系統(tǒng)設計。 本書以ST 公司的32 位處理器STM32F103ZET6 芯片為控制核心,從固件庫開發(fā)的視角,詳細講解了STM32嵌入式應用程序開發(fā)的過程和方法。 本書內(nèi)容詳實, 項目案例豐富,操作性極強。
本書以ST 公司的32 位處理器STM32F103ZET6 芯片為控制核心,從固件庫開發(fā)的視角,詳細講解了STM32嵌入式應用程序開發(fā)的過程和方法。 本書內(nèi)容詳實, 項目案例豐富,操作性極強。
當前嵌入式領域 ARM32位處理器已經(jīng)進入以ST 公司STM32為代表的Cortex-M3時代,Cortex-M3 采用ARMv7構架,支持Thumb-2指令集,而且擁有諸如強勁的性能、超高的代碼密度、位帶操作、可嵌套中斷、低成本、低功耗等眾多優(yōu)勢,成為當前嵌入式技術應用領域zui流行的處理器。
隨著中國產(chǎn)業(yè)轉型和電子信息產(chǎn)業(yè)結構調(diào)整加快,以STM32處理器為代表的嵌入式人才備受用人企業(yè)青睞,ARM 嵌入式技術人才也成為高職院校人才培養(yǎng)的一個重要目標。由于 ARM 嵌入式技術更新?lián)Q代快、專業(yè)綜合性強等原因,ARM 嵌入式技術人才培養(yǎng)成為目前以面向市場需求、以就業(yè)為導向、能力為本位、以零距離就業(yè)為目標的高職院校嵌入式技術人才培養(yǎng)中的難點。其重要表現(xiàn)之一就是高職院校 ARM 嵌入式課程在實施過程中相關教學資源相對不足,特別是以STM32位為代表的適合高職學生學習特點的 ARM 嵌入式教材匱乏。
隨著人們對家居環(huán)境信息化、智能化需求的提升,智能家居領域成為當前嵌入式技術的重要應用領域之一。為實現(xiàn)智能家居中家電控制、 照明控制、 電話遠程控制、 室內(nèi)外遙控、防盜報警、環(huán)境監(jiān)測、暖通控制、紅外轉發(fā)及可編程定時控制等多種功能和手段,需要一款功能強大、資源豐富的處理器芯片。 而STM32 處理器完全能滿足上述要求, 加上ST 公司提供了豐富的固件庫,方便開發(fā)人員學習上手,成為開發(fā)人員該領域智能化控制中的首選CPU 之一。
基于以上幾個因素的考慮,本書所有項目例程都是面向智能家居控制領域,選用ST 公司的32位經(jīng)典處理器STM32F103ZET6芯片為核心處理器,采用Keil-MDK 開發(fā)環(huán)境,以固件庫開發(fā)的方式進行講解。固件庫采用的是ST 官方350版本。
為了更好地讓讀者掌握基于固件庫的STM32嵌入式應用程序開發(fā)方法,首先對基于固件庫開發(fā)所涉及的C 語言與數(shù)據(jù)結構理論基礎知識進行講解; 在此基礎上結合一系列實際應用項目,對STM32F103ZET6芯片的片上外設資源、 外圍傳感器及相關通信協(xié)議進行詳細講解。值得一提的是,書中對于 C 語言和數(shù)據(jù)結構及STM32F103ZET6 芯片上外設資源的講解以充分、夠用為主要指導思想,通過八個智能家居領域的案例項目,旨在讓讀者更快更好地入門,進而循序漸進、深刻系統(tǒng)地掌握基于STM32官方固件庫進行嵌入式應用程序開發(fā)的方法。
本書由常州機電職業(yè)技術學院教師編寫,徐登、左亞旻任主編,顏云華、陳愛民任副主編,其中,第二部分的項目一、項目七和項目八由徐登編寫,第二部分項目二~項目四由左亞旻編寫,第二部分項目五、項目六由顏云華編寫,第yi部分由陳愛民編寫。劉翠梅、范順治、朱小剛、錢惠祥參與了部分內(nèi)容的編寫。
本書由常州機電職業(yè)技術學院劉賢鋒主審。同時,本書在編寫過程中,得到許多同行的幫助,也引用、借鑒了相關專家的教材、著作,在此一并致謝。
由于本書涉及知識面廣,時間倉促,限于筆者的水平和經(jīng)驗,疏漏之處在所難免,懇請專家和讀者批評指正。有任何建議或意見可以發(fā)送郵件到xavier_ xd@126com 或致電0519 -86331000與編寫組進行交流,萬分感謝。
編 者
2017年
徐登,碩士研究生,現(xiàn)擔任常州機電職業(yè)技術學院信息工程學院電子信息技術專業(yè)教學團隊主任。2008年9月至今在常州機電職業(yè)技術學院從事教學工作,曾多次指導學生參加電子大賽獲獎,多次指導學生獲得省、院優(yōu)秀畢業(yè)設計。曾承擔C51單片機應用技術,嵌入式應用技術,電子技術基礎,電子產(chǎn)品市場營銷等課程的教學工作。
第一部分 C語言與數(shù)據(jù)結構篇
單元一 數(shù)組、結構體及枚舉類型 2
單元二 函數(shù)與預處理命令 18
單元三 指針與鏈表 33
第二部分 庫開發(fā)項目實戰(zhàn)篇
項目一 ARM 嵌入式開發(fā)環(huán)境 RVMDK的使用 60
任務要求 60
理論知識 60
運行調(diào)試 65
任務小結 77
項目二 家用燈光照明系統(tǒng)的設計 78
任務要求 78
理論知識 78
硬件設計 104
軟件設計 106
運行調(diào)試 110
任務小結 114
項目三 家用門禁報警系統(tǒng)的設計 115
任務要求 115
理論知識 115
硬件設計 130
軟件設計 132
運行調(diào)試 138
任務小結 138
項目四 家用通風系統(tǒng)的設計 139
任務要求 139
理論知識 139
硬件設計 157
軟件設計 158
運行調(diào)試 162
任務小結 163
項目五 家用溫度檢測系統(tǒng)的設計 164
任務要求 164
理論知識 164
硬件設計 183
軟件設計 186
運行調(diào)試 193
任務小結 193
項目六 家用廚房燃氣監(jiān)控系統(tǒng)設計 195
任務要求 195
理論知識 195
硬件設計 216
軟件設計 217
運行調(diào)試 227
任務小結 228
項目七 家用密碼存儲系統(tǒng)設計 229
任務要求 229
理論知識 229
硬件設計 240
軟件設計 241
運行調(diào)試 251
任務小結 252
項目八 家用植物種植智能控制系統(tǒng)設計 253
任務要求 253
理論知識 253
硬件設計 261
軟件設計 266
運行調(diào)試 290
任務小結 291
參考文獻 292