前言
伴隨著信息時(shí)代的高速發(fā)展,5G技術(shù)、人工智能、移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、智能硬件給社會(huì)帶來(lái)了巨大沖擊,個(gè)性化、定制化和時(shí)尚化的智能硬件已經(jīng)成為未來(lái)的發(fā)展趨勢(shì)。智能硬件和開源硬件的愛好者們都?jí)粝肽軌驌碛幸豢钜咨鲜、易擴(kuò)展、功能強(qiáng)大的智能硬件開發(fā)平臺(tái)和易學(xué)易懂的教材。作者身處大學(xué)校園,感受到當(dāng)今開源硬件發(fā)展的潮流洶涌,基于工程教育教學(xué)經(jīng)驗(yàn),探索了創(chuàng)新工程教育的基本方法,推出了具有自身特色的創(chuàng)新實(shí)踐教材——《Arduino技術(shù)及應(yīng)用(微課視頻版)》。
視頻講解
本書以Arduino作為實(shí)驗(yàn)平臺(tái),全方位介紹了Arduino智能硬件開發(fā)的案例。Arduino是一款便捷靈活、方便上手的開源電子原型平臺(tái),包含硬件(各種型號(hào)的Arduino板)和軟件(Arduino IDE)。Arduino的軟硬件設(shè)計(jì)資料全面開放,已經(jīng)構(gòu)成一個(gè)可供用戶搭建機(jī)器人及各類電子項(xiàng)目的開發(fā)環(huán)境。開源硬件使得人們可以更容易、更便捷地開發(fā)自己的產(chǎn)品,開發(fā)者可以直接下載電路圖和源代碼,既可直接使用,也可自己動(dòng)手實(shí)現(xiàn)所需要的功能。
國(guó)內(nèi)Arduino方面的書籍多為單純的紙質(zhì)參考書,搭配有完整教學(xué)講解視頻的還非常少; 同時(shí)大多數(shù)書籍為應(yīng)用類的圖書,適用于教學(xué)的教材較少。本書正是為了滿足此方面的需求而編寫,而且作者向書和視頻均傾注了大量的日常教學(xué)經(jīng)驗(yàn)與心得。本書配套了教學(xué)大綱、教學(xué)計(jì)劃、教學(xué)課件、程序代碼以及針對(duì)理論知識(shí)點(diǎn)、實(shí)驗(yàn)操作、項(xiàng)目實(shí)戰(zhàn)的講解微課視頻,可作為電子信息、物聯(lián)網(wǎng)、計(jì)算機(jī)等專業(yè)開源硬件課程的教材,也是信息技術(shù)類的大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目、高校創(chuàng)新創(chuàng)業(yè)教育、大學(xué)生計(jì)算機(jī)設(shè)計(jì)大賽、物聯(lián)網(wǎng)大賽、課程設(shè)計(jì)(實(shí)習(xí))、畢業(yè)設(shè)計(jì)等必備的參考教材。
本書的最大特點(diǎn)是通過(guò)“基礎(chǔ)知識(shí)→模塊實(shí)驗(yàn)→電路設(shè)計(jì)→項(xiàng)目實(shí)戰(zhàn)”的思路,以教材內(nèi)容為主、微課視頻為輔的方式,由淺入深、先易后難、先簡(jiǎn)單后綜合地引導(dǎo)讀者進(jìn)行學(xué)習(xí)和逐步提高,分階段、分步驟地激發(fā)讀者的學(xué)習(xí)興趣。書中第1~4章基礎(chǔ)知識(shí)部分按照課堂理論講解方法闡述; 第5~14章模塊實(shí)驗(yàn)部分按照實(shí)驗(yàn)課模式展開; 第15章電路設(shè)計(jì)基礎(chǔ)部分采用“理論講解+實(shí)踐操作”方式進(jìn)行講述; 第16章項(xiàng)目實(shí)戰(zhàn)部分按照真實(shí)工程項(xiàng)目研發(fā)流程演進(jìn)。為便于入門級(jí)讀者及非專業(yè)的愛好者閱讀,書中添加了許多技術(shù)小貼士,幫助讀者擴(kuò)展實(shí)驗(yàn)知識(shí); 還配套了元器件清單及程序代碼等,便于讀者自學(xué)。
本書配套資源:
資源下載
教學(xué)大綱、教學(xué)課件、程序代碼等資源,可掃描此處二維碼下載或到清華大學(xué)出版社官方網(wǎng)站本書頁(yè)面下載。
微課視頻(53個(gè),共450分鐘),可掃描書中各章節(jié)對(duì)應(yīng)位置二維碼觀看。
(注意: 第一次掃描書中二維碼時(shí),請(qǐng)先刮開封底的刮刮卡,掃描其中的二維碼進(jìn)行注冊(cè),注冊(cè)之后即可獲取相關(guān)資源。)
本書共16章,建議教學(xué)學(xué)時(shí)為64學(xué)時(shí),其中理論32學(xué)時(shí),實(shí)驗(yàn)32學(xué)時(shí)(其中模塊實(shí)驗(yàn)20學(xué)時(shí),綜合實(shí)驗(yàn)12學(xué)時(shí))。
本書由河北地質(zhì)大學(xué)李明亮教授組織編寫。第1~4章由李明亮編寫,第5~9章由李宏偉編寫,第10~14章由翟雨編寫,第15章和第16章由周永旭編寫。李明亮和周永旭完成了全部書稿的統(tǒng)籌及審核工作。
希望讀者在學(xué)習(xí)完本書后能自己動(dòng)手進(jìn)行Arduino的開發(fā),也希望本書能為讀者帶來(lái)精彩的技術(shù)人生。
衷心感謝中國(guó)移動(dòng)通信集團(tuán)設(shè)計(jì)院有限公司張茹娜、北京工業(yè)大學(xué)碩士研究生孫大鵬在本書撰寫中給予的幫助; 感謝河北地質(zhì)大學(xué)肖震霞老師為本書插圖設(shè)計(jì)所做的大量工作; 感謝曾經(jīng)在本書撰寫過(guò)程中提供過(guò)幫助的人們。
最后,要特別感謝清華大學(xué)出版社的大力支持,如果沒(méi)有他們的努力和辛勤勞動(dòng),這本書是不會(huì)這么快出版的。
由于時(shí)間倉(cāng)促,加之作者水平有限,書中難免有不足之處,歡迎廣大讀者批評(píng)指正,有興趣的讀者可發(fā)送郵件到workemail6@163.com與我們聯(lián)系。
說(shuō)明: 本書第15章為軟件操作介紹,所用電路圖中的元器件符號(hào)保持與實(shí)際軟件中的元器件符號(hào)一致。
作者
2020年10月
第1部分基 礎(chǔ) 知 識(shí)
第1章Arduino概述
1.1Arduino起源
1.2Arduino可以做什么
1.3為什么用Arduino
1.4Arduino開源文化
1.5Arduino發(fā)展趨勢(shì)
1.5.1創(chuàng)客文化
1.5.2快速原型設(shè)計(jì)
1.6Arduino趣味實(shí)例
1.7課后問(wèn)答
1.8本章小結(jié)
第2章Arduino硬件資源
2.1核心芯片
2.2典型開發(fā)板
2.2.1Arduino Uno
2.2.2Arduino Nano
2.2.3Arduino ProMini
2.2.4Arduino Leonardo
2.2.5Arduino Mega2560
2.2.6Arduino Due
2.2.7Arduino Micro
2.3典型擴(kuò)展板
2.3.1Proto Shield原型開發(fā)板
2.3.2GPRS Shield擴(kuò)展板
2.3.3Arduino Ethernet W5100 R3 Shield網(wǎng)絡(luò)擴(kuò)展板
2.3.4WizFi210擴(kuò)展板
2.3.5Arduino L298N電機(jī)驅(qū)動(dòng)擴(kuò)展板
2.3.6Arduino傳感器擴(kuò)展板
2.3.7Arduino I/O擴(kuò)展板
2.4簡(jiǎn)單認(rèn)識(shí)其他不同型號(hào)的Arduino控制器
2.4.1Arduino Zero
2.4.2Arduino兼容控制器
2.4.3衍生控制器
2.5課后問(wèn)答
2.6本章小結(jié)
第3章開發(fā)環(huán)境
3.1開發(fā)環(huán)境概述
3.2集成開發(fā)環(huán)境
3.2.1Windows環(huán)境搭建
3.2.2Mac OS X環(huán)境搭建
3.3驅(qū)動(dòng)安裝
3.4IDE基本操作
3.4.1菜單
3.4.2快捷鍵
3.5程序輸入、編譯及下載
3.6開發(fā)環(huán)境常見問(wèn)題
3.7課后問(wèn)答
3.8本章小結(jié)
第4章Arduino語(yǔ)言
4.1Arduino語(yǔ)言概述
4.1.1標(biāo)識(shí)符
4.1.2關(guān)鍵字
4.1.3Arduino語(yǔ)言運(yùn)算符
4.1.4Arduino語(yǔ)言控制語(yǔ)句
4.1.5Arduino語(yǔ)言基本結(jié)構(gòu)
4.2Arduino基本函數(shù)
4.2.1數(shù)字I/O
4.2.2模擬I/O
4.2.3高級(jí)I/O
4.2.4時(shí)間函數(shù)
4.2.5數(shù)學(xué)函數(shù)
4.2.6三角函數(shù)
4.2.7隨機(jī)數(shù)函數(shù)
4.2.8外部中斷函數(shù)
4.2.9中斷使能函數(shù)
4.2.10串口收發(fā)函數(shù)
4.2.11附表
4.3Arduino庫(kù)函數(shù)
4.3.1庫(kù)函數(shù)概述
4.3.2常用庫(kù)函數(shù)
4.4課后問(wèn)答
4.5本章小結(jié)
第2部分模 塊 實(shí) 驗(yàn)
第5章炫酷LED燈
5.1實(shí)驗(yàn)原理
5.2材料清單及數(shù)據(jù)手冊(cè)
5.2.1材料清單
5.2.2核心元件數(shù)據(jù)手冊(cè)
5.3硬件連接
5.4程序設(shè)計(jì)
5.4.1設(shè)計(jì)思路及流程圖
5.4.2程序源碼
5.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
5.6代碼回顧
5.7拓展實(shí)驗(yàn)
5.8拓展實(shí)驗(yàn)調(diào)試及現(xiàn)象
5.9技術(shù)小貼士
5.9.1解析LED正負(fù)極判別方法
5.9.2LED分類
第6章按鍵開關(guān)輸入
6.1實(shí)驗(yàn)原理
6.2材料清單
6.3硬件連接
6.4程序設(shè)計(jì)
6.4.1設(shè)計(jì)思路及流程圖
6.4.2程序源碼
6.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
6.6拓展實(shí)驗(yàn)
6.7拓展實(shí)驗(yàn)調(diào)試及現(xiàn)象
6.8技術(shù)小貼士
第7章火焰?zhèn)鞲衅?
7.1實(shí)驗(yàn)原理
7.2材料清單及數(shù)據(jù)手冊(cè)
7.2.1材料清單
7.2.2火焰?zhèn)鞲衅鞯臄?shù)據(jù)手冊(cè)
7.3硬件連接
7.4程序設(shè)計(jì)
7.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
第8章溫度與濕度監(jiān)測(cè)
8.1實(shí)驗(yàn)原理
8.2材料清單及數(shù)據(jù)手冊(cè)
8.2.1材料清單
8.2.2DHT11數(shù)據(jù)手冊(cè)
8.3硬件連接
8.4程序設(shè)計(jì)
8.4.1設(shè)計(jì)思路及流程圖
8.4.2程序源碼
8.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
8.6拓展實(shí)驗(yàn)
8.7拓展實(shí)驗(yàn)調(diào)試及現(xiàn)象
8.8技術(shù)小貼士
第9章氣體監(jiān)測(cè)
9.1實(shí)驗(yàn)原理
9.2材料清單及數(shù)據(jù)手冊(cè)
9.2.1材料清單
9.2.2MQ2數(shù)據(jù)手冊(cè)
9.2.3MQ2煙霧傳感器模塊
9.3硬件連接
9.4程序設(shè)計(jì)
9.4.1設(shè)計(jì)思路及流程圖
9.4.2程序源碼
9.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
9.6技術(shù)小貼士
第10章LCD顯示
10.1實(shí)驗(yàn)原理
10.2材料清單及數(shù)據(jù)手冊(cè)
10.2.1材料清單
10.2.21602 LCD數(shù)據(jù)手冊(cè)
10.3硬件連接
10.4程序設(shè)計(jì)
10.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
10.6技術(shù)小貼士
第11章電機(jī)控制
11.1實(shí)驗(yàn)背景
11.2材料清單及數(shù)據(jù)手冊(cè)
11.2.1材料清單
11.2.2步進(jìn)電機(jī)數(shù)據(jù)手冊(cè)
11.3硬件連接
11.4程序設(shè)計(jì)
11.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
11.6拓展實(shí)驗(yàn)
11.7技術(shù)小貼士
第12章藍(lán)牙通信
12.1實(shí)驗(yàn)背景
12.2材料清單及數(shù)據(jù)手冊(cè)
12.2.1材料清單
12.2.2藍(lán)牙模塊數(shù)據(jù)手冊(cè)
12.3硬件連接
12.4程序設(shè)計(jì)
12.5調(diào)試及實(shí)驗(yàn)現(xiàn)象
12.6技術(shù)小貼士
第13章WiFi無(wú)線數(shù)據(jù)傳輸
13.1實(shí)驗(yàn)背景
13.2材料清單及數(shù)據(jù)手冊(cè)
13.2.1材料清單
13.2.2WiFi模塊數(shù)據(jù)手冊(cè)
13.3電路連接及通信初始化
13.4程序設(shè)計(jì)
13.5程序調(diào)試
13.6技術(shù)小貼士
第14章ZigBee無(wú)線數(shù)據(jù)傳輸
14.1實(shí)驗(yàn)背景
14.2材料清單及數(shù)據(jù)手冊(cè)
14.2.1材料清單
14.2.2XBee/XBeePRO模塊數(shù)據(jù)手冊(cè)
14.3硬件連接
14.4程序設(shè)計(jì)
14.5程序調(diào)試
14.6技術(shù)小貼士
第3部分電路設(shè)計(jì)基礎(chǔ)
第15章電路設(shè)計(jì)基礎(chǔ)
15.1原理圖的設(shè)計(jì)
15.1.1原理圖簡(jiǎn)介
15.1.2原理圖編輯器
15.1.3原理圖的繪制
15.1.4原理圖繪制實(shí)例
15.2PCB的設(shè)計(jì)
15.2.1PCB簡(jiǎn)介
15.2.2PCB編輯器
15.2.3PCB的繪制
15.3電路板的生產(chǎn)
15.3.1電路板生產(chǎn)流程
15.3.2Gerber文件
15.4PCB設(shè)計(jì)案例與分析
第4部分項(xiàng) 目 實(shí) 戰(zhàn)
第16章基于Arduino的智能小車
16.1項(xiàng)目背景
16.1.1國(guó)內(nèi)外的智能車輛現(xiàn)狀
16.1.2研究智能車輛的意義
16.1.3Arduino在智能小車上的應(yīng)用
16.2系統(tǒng)架構(gòu)
16.2.1小車的硬件模塊
16.2.2小車控制器的選擇
16.2.3小車電源的選擇
16.2.4小車避障模塊的選擇
16.2.5小車通信模塊的選擇
16.2.6小車電機(jī)與電機(jī)驅(qū)動(dòng)模塊的選擇
16.2.7小車舵機(jī)模塊的選擇
16.3材料清單
16.4模塊制作
16.4.1藍(lán)牙模塊
16.4.2超聲波測(cè)距模塊
16.5硬件設(shè)計(jì)原理圖
16.6軟件程序流程圖
16.7參考程序
16.8附錄: 指令程序?qū)?yīng)表
參考文獻(xiàn)