本書(shū)是由小左實(shí)驗(yàn)室所有成員共同編寫(xiě)的一本極具學(xué)習(xí)價(jià)值和參考價(jià)值的圖書(shū)。本書(shū)主要以ArduinoMega2560為主線,展開(kāi)對(duì)Arduino各方面知識(shí)系統(tǒng)全面的講解,通過(guò)豐富詳盡的例程講授當(dāng)前流行的Arduino知識(shí),使初學(xué)者可以很快入手,并且創(chuàng)造出自己的Arduino項(xiàng)目。同時(shí),本書(shū)采用手把手的教學(xué)方式,使讀者學(xué)會(huì)如何使用各種電子元件,以及學(xué)會(huì)如何實(shí)現(xiàn)使用Arduino編程對(duì)各電子元件的控制和通信。第1章詳細(xì)地介紹了ArduinoMega2560的硬件資源及Arduino的編程環(huán)境;第2章講述了Arduino語(yǔ)言的程序結(jié)構(gòu)、基本語(yǔ)句、程序控制、操作符、變量、基本函數(shù)等;第3~6章通過(guò)實(shí)驗(yàn)的方法分別介紹了ArduinoMega2560的串口通信、I/O端口和時(shí)間函數(shù)的操作、模擬信號(hào)的采集并實(shí)現(xiàn)A-D轉(zhuǎn)換及PWM的輸出;第7章主要介紹了Arduino內(nèi)部庫(kù),類的定義、結(jié)構(gòu)、使用和特性;第8~11章主要通過(guò)實(shí)驗(yàn)的方法介紹了Arduino內(nèi)部庫(kù)和類的使用、I2C通信、SPI通信、Interrupt中斷、鍵盤(pán)顯示和數(shù)據(jù)存儲(chǔ)。
本書(shū)將針對(duì)自動(dòng)化工程、電氣工程程序設(shè)計(jì)零基礎(chǔ)的學(xué)生或工程師,培養(yǎng)他們對(duì)單片機(jī)Arduino(C++)語(yǔ)言編程及其外圍電路的設(shè)計(jì)能力,增強(qiáng)他們對(duì)單片機(jī)的親近感和應(yīng)用理解。通過(guò)本書(shū)的學(xué)習(xí),使大家掌握單片機(jī)的基本原理,獨(dú)立設(shè)計(jì)單片機(jī)外圍電路,編寫(xiě)單片機(jī)的Arduino程序,掌握嵌入式系統(tǒng)的面向?qū)ο蟪绦蛟O(shè)計(jì)方法。
本書(shū)內(nèi)容分為兩部分,共11章,基礎(chǔ)部分(第1~6章):主要講解Arduino開(kāi)發(fā)板、Arduino程序與C++語(yǔ)言、串口通信、I/O端 口、A-D采樣、PWM輸出與模擬信號(hào)。進(jìn)階部分(第7~11章)主要講解與外圍電路的通信,及一些實(shí)用編程技術(shù)和應(yīng)用,例如,類設(shè)計(jì)與庫(kù)、I2C通信、SPI通信、中斷、數(shù)據(jù)存儲(chǔ)。
本書(shū)內(nèi)容淺顯易懂,實(shí)現(xiàn)方法多變,鼓勵(lì)以自學(xué)為主,以動(dòng)手實(shí)踐為輔,內(nèi)容學(xué)習(xí)之后安排電路搭建實(shí)驗(yàn)或程序設(shè)計(jì)實(shí)驗(yàn)作為練習(xí)。
本書(shū)適用人群與閱讀目標(biāo):
本書(shū)將針對(duì)電氣工程、自動(dòng)化工程、電子工程、通信工程以及非信息類工程有一定電路基礎(chǔ)的學(xué)生和工程師,培養(yǎng)他們對(duì)單片機(jī)Arduino(C++)語(yǔ)言編程及其外圍電路的設(shè)計(jì)能力,增強(qiáng)他們對(duì)單片機(jī)的親近感和應(yīng)用理解。
內(nèi)容特色:
通過(guò)本書(shū)的學(xué)習(xí),使學(xué)生完全掌握單片機(jī)的基本原理和工程應(yīng)用,能夠獨(dú)立設(shè)計(jì)單片機(jī)外圍電路,編寫(xiě)單片機(jī)的Arduino程序,基本掌握嵌入式系統(tǒng)的面向?qū)ο蟪绦蛟O(shè)計(jì)方法。
目 錄
前言
第1章 Arduino初解與Mega2560實(shí)驗(yàn)板1
1.1 Arduino的前世今生2
1.2 Mega2560 R3開(kāi)發(fā)板3
1.3 Arduino軟件安裝6
1.4 Arduino編程環(huán)境10
1.5 第一個(gè)程序運(yùn)行13
1.6 硬件與軟件結(jié)合的產(chǎn)物14
第2章 Arduino程序與C++語(yǔ)言18
2.1 程序結(jié)構(gòu)19
2.2 基本編寫(xiě)規(guī)則19
2.3 常量20
2.4 變量21
2.5 類型轉(zhuǎn)換函數(shù)22
2.6 數(shù)學(xué)表達(dá)式22
2.7 程序控制23
2.8 函數(shù)25
2.9 Arduino基本函數(shù)資源27
第3章 串口通信35
3.1 Arduino Mega2560與Arduino IDE連接36
3.2 TTL電平與RS-232串口通信36
3.3 串口通信協(xié)議與函數(shù)36
3.4 字符串通信38
3.5 Arduino程序運(yùn)行監(jiān)控39
3.6 GPS模塊串口通信41
第4章 I/O端口與時(shí)間計(jì)數(shù)44
4.1 指定端口輸出與讀取46
4.2 時(shí)間函數(shù)47
4.3 8位數(shù)據(jù)直接讀寫(xiě)49
4.4 七段LED數(shù)碼管50
第5章 A-D采樣與模擬信號(hào)采集55
5.1 模擬量讀取56
5.2 電位計(jì)讀取57
5.3 酒精濃度檢測(cè)58
5.4 濕度報(bào)警59
5.5 空速管差壓傳感器60
第6章 PWM波與模擬信號(hào)輸出63
6.1 PWM與LED燈亮度控制64
6.2 舵機(jī)ESC信號(hào)67
6.3 無(wú)刷電機(jī)ESC信號(hào)70
第7章 類設(shè)計(jì)、對(duì)象與庫(kù)73
7.1 Arduino庫(kù)74
7.2 類的特點(diǎn)74
7.3 類的構(gòu)成79
7.4 繼承80
7.5 類文件與庫(kù)83
第8章 I2C通信85
8.1 I2C通信電路與庫(kù)函數(shù)86
8.2 磁阻計(jì)數(shù)據(jù)讀取88
8.3 三軸加速度和角加速度讀取94
第9章 SPI通信104
9.1 SPI通信與電路105
9.2 SPI通信函數(shù)106
9.3 氣壓高度計(jì)數(shù)據(jù)讀取107
9.4 三軸加速度和三軸角速度傳感器SPI通信讀取113
第10章 中斷、鍵盤(pán)和顯示120
10.1 Arduino Mega2560開(kāi)發(fā)板的中斷資源121
10.2 鍵盤(pán)輸入122
10.3 字符型液晶顯示模塊125
第11章 數(shù)據(jù)存儲(chǔ)131
11.1 E2PROM數(shù)據(jù)儲(chǔ)存與讀取132
11.2 I2C總線的E2PROM數(shù)據(jù)存儲(chǔ)與讀取134
11.3 SPI總線的SD存儲(chǔ)卡數(shù)據(jù)讀寫(xiě)138