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