《入門很簡單叢書:Arduino入門很簡單》是一本Arduino基礎教程,旨在幫助讀者實現(xiàn)Arduino開發(fā)快速入門。全書詳略得當,可以幫助讀者快速掌握Arduino基礎知識;本書后半部分著力講解各種相關器件的使用,讓讀者可以在最短時間內實現(xiàn)自己的電子設計構想。
全書共16章,分為3篇。內容涉及Arduino認識、電路設計軟件Fritzing、Ardunio IDE的安裝和使用、編程語言基礎、通用元器件、LED、蜂鳴器、按鈕、電位器、光敏電阻、火焰?zhèn)鞲衅鳌穸葌鞲衅、紅外線收發(fā)、液位傳感器、LCD、麥克風、超聲波、RFID、RTC、伺服電機、步進電機等。最后,本書還講解了一個創(chuàng)新性實戰(zhàn)案例——打地鼠,幫助讀者擴展思路,啟發(fā)創(chuàng)意。
由于本書內容從Arduino基礎部分開始,所以非常適合入門讀者學習。同時,在講解的時候涉及了大量各種器件的應用,所以本書也適合作為電子設計人員閱讀和參考。
一分鐘了解本書內容
Arduino概述
電路設計軟件Fritzing
Arduino IDE的安裝與使用
Arduino編程語言基礎
通用元器件介紹
發(fā)光二極管LED
蜂鳴器
按鈕
電位器
光敏電阻和常見傳感器
LCD
聲音模塊
RFID——射頻識別
實時時鐘——RTC
伺服電機和步進電機
用Arduino做游戲——打地鼠
第1篇 Arduino開發(fā)基礎
第1章 Arduino概述
1.1 Arduino的起源
1.2 術語Arduino的含義
1.2.1 Arduino的硬件
1.2.2 Arduino的軟件
1.2.3 Arduino的社區(qū)
1.3 Arduino的硬件產(chǎn)品——主板
1.3.1 Arduino UNO
1.3.2 Arduino Leonardo
1.3.3 Arduino Due
1.3.4 Arduino Yún
1.3.5 Arduino Tre
1.3.6 Arduino Micro
1.3.7 Arduino Robot
1.3.8 Arduino Esplora
1.3.9 Arduino Mega系列
1.3.10 Arduino Ethernet
1.3.11 Arduino Mini
1.3.12 LiLyPad Arduino系列
1.3.13 Arduino Nano
1.3.14 Arduino Pro系列
1.3.15 Arduino Fio
1.3.16 Arduino Zero
1.4 Arduino的硬件產(chǎn)品——盾板
1.4.1 Arduino GSM盾板
1.4.2 Arduino Ethernet盾板
1.4.3 Arduino WiFi盾板
1.4.4 Arduino Wireless SD盾板
1.4.5 Arduino Motor盾板
1.4.6 Arduino Wireless Proto盾板
1.4.7 Arduino Proto盾板
1.5 Arduino硬件產(chǎn)品——新手套件
1.6 Arduino硬件產(chǎn)品——附件
1.6.1 TFT LCD屏幕
1.6.2 微型USB/Serial適配器
1.6 Arduino UNO
1.6.1 Arduino UNO上的主要元器件
1.6.2 Arduino UNO上的端口
1.7 Arduino可以做什么
第2章 電路設計軟件Fritzing
2.1 Fritzing基礎
2.1.1 Fritzing的下載與安裝
2.1.2 認識Fritzing的主面板
2.2 Fritzing的元件庫
2.2.1 元件的組織形式
2.2.2 導入元件庫
2.2.3 導出元件庫
2.3 編輯元件
2.3.1 Fritzing的元件編輯器
2.3.2 制作元件的面包板視圖
2.3.3 制作元件的原理圖視圖
2.3.4 制作元件的PCB視圖
2.3.5 元件編輯器的圖標和元數(shù)據(jù)視圖
2.3.6 關聯(lián)所有視圖的針腳
2.4 畫出手電筒的電路圖
第3章 Arduino IDE安裝與使用
3.1 Arduino IDE安裝
3.1.1 Arduino IDE安裝包下載
3.1.2 使用二進制安裝包安裝Arduino IDE
3.1.3 使用壓縮包形式安裝Arduino IDE
3.1.4 Arduino IDE中文化
3.2 Windows7下的Arduino驅動安裝
3.2.1 自動安裝Arduino驅動
3.2.2 手動安裝Arduino驅動
3.3 在Arduino上運行程序
3.3.1 Arduino IDE主界面簡介
3.3.2 運行一個閃爍LED示例程序
3.3.3 運行一個控制臺輸出示例程序
3.4 Arduino IDE編碼流程
3.4.1 創(chuàng)建、保存和打開源文件
3.4.2 編輯源文件
3.4.3 校驗源文件
3.4.4 下載程序到開發(fā)板
3.5 高級的Arduino IDE——MariaMole
第4章 Arduino編程語言基礎
4.1 Arduino程序必要的setup()和loop()
4.2 程序中的值
4.2.1 變量和常量
4.2.2 變量類型
4.2.3 變量的作用域和修飾符
4.2.4 獲取變量大小的工具——sizeof()
4.2.5 變量類型轉換
4.3 運算符
4.3.1 數(shù)學運算符
4.3.2 比較運算符
4.3.3 布爾運算符
4.3.4 指針運算符
4.3.5 位運算符
4.3.6 復合運算符
4.4 語法進階
4.4.1 預定義命令#define和#include
4.4.2 語句和語句塊
4.4.3 注釋
4.5 控制結構
4.5.1 條件判斷語句if和if…else
4.5.2 跳轉語句break、continue、return和goto
4.5.3 分支語句switch case
4.5.4 循環(huán)語句while和do…while
4.5.5 循環(huán)語句for
4.6 函數(shù)
4.6.1 系統(tǒng)函數(shù)
4.6.2 調用函數(shù)
4.6.3 自定義函數(shù)
4.7 C++語言的類和對象
4.7.1 類
4.7.2 對象
4.8 庫
4.8.1 Arduino官方庫
4.8.2 使用第三方庫和創(chuàng)建自己的庫
第2篇 Arduino元器件篇
第5章 通用元器件介紹
5.1 導線、電纜和連接器
5.2 電阻
5.2.1 概念
5.2.2 阻值識別
5.2.3 歐姆定律
5.2.4 電阻的作用
5.2.5 電阻的串聯(lián)與并聯(lián)
5.3 面包板
第6章 發(fā)光二極管LED
6.1 使用到的專用器件
6.2 驅動單個LED程序
6.2.1 使用數(shù)字針腳點亮LED
6.2.2 使用模擬針腳點亮LED
6.2.3 使用LED發(fā)送S.O.S摩爾斯碼
6.2.4 使用LED發(fā)送摩爾斯電碼
6.2.5 LED跑馬燈
6.2.6 使用LED模擬交通燈
6.3 驅動LED點陣
6.3.1 LED點陣顯示表情
6.3.2 LED點陣跑馬燈
6.3.3 回紋燈
6.3.4 矩形回縮燈
6.4 使用74HC595驅動LED
6.4.1 74HC595使用方式
6.4.2 使用74HC595驅動LED點陣
6.5 使用MAX7219驅動LED
6.5.1 MAX7219LED顯示驅動器
6.5.2 MAX7219的數(shù)據(jù)格式
6.5.3 MAX7219的寄存器
6.5.4 LedControl庫
6.5.5 Arduino通過MAX7219控制8*8LED點陣
6.5.6 MAX7219級聯(lián)控制8*40LED點陣
6.6 RGB三色LED
6.7 七段數(shù)碼管
6.7.1 Arduino直接控制七段數(shù)碼管
6.7.2 Arduino通過74HC595控制一個七段數(shù)碼管
6.7.3 使用兩個74HC595驅動4位七段數(shù)碼管
6.7.4 Arduino通過MAX7219控制七段數(shù)碼管
第7章 蜂鳴器
7.1 蜂鳴器的工作原理及分類
7.2 驅動蜂鳴器程序
7.2.1 驅動有源蜂鳴器
7.2.2 驅動無源蜂鳴器
7.3 蜂鳴器使用實例
7.3.1 使用無源蜂鳴器輸出7個基本音級
7.3.2 使用無源蜂鳴器演奏音樂
7.3.3 使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼
第8章 按鈕
8.1 按鈕的作用及分類
8.2 按鈕的實質
8.3 按鈕的使用示例
8.3.1 使用按鈕控制LED燈
8.3.2 使用Arduino的中斷
8.3.3 按鈕矩陣的使用
8.3.4 使用按鈕矩陣模擬鋼琴
第9章 電位器
9.1 普通電位器
9.2 游戲搖桿
9.3 使用示例
9.3.1 讀取電位器的值
9.3.2 使用電位器控制LED亮度
9.3.3 使用電位器控制LED流水燈速度
9.3.4 游戲搖桿的使用
第10章 光敏電阻和常見傳感器
10.1 光敏電阻
10.1.1 光敏電阻應用原理
10.1.2 光控燈
10.2 火焰?zhèn)鞲衅?br />
10.3 溫濕度傳感器
10.3.1 精密攝氏溫度傳感器LM35
10.3.2 溫濕度傳感器模塊
10.4 紅外線收發(fā)
10.4.1 紅外線模塊構成
10.4.2 使用第三庫Irremote
10.5 液位傳感器
10.5.1 接觸式液位傳感器
10.5.2 完善液位傳感器
第11章 LCD
11.1 LCD模塊LCD1602
11.2 LCD控制庫LiquidCrystal
11.2.1 LiquidCrystal八線模式
11.2.2 LiquidCrystal四線模式
11.3 LiquidCrystal_I2C庫
第12章 聲音模塊
12.1 麥克風模塊
12.1.1 讀取麥克風數(shù)據(jù)
12.1.2 聲控燈
12.1.3 自適應聲控燈
12.2 超聲波模塊
12.2.1 超聲波模塊HC-SR04
12.2.2 第三方庫NewPing
12.2.3 超聲波模塊應用
第13章 RFID——射頻識別
13.1 RFID概覽
13.2 RFID硬件
13.2.1 RFID讀/寫器
13.2.2 RFID應答器
13.3 為RFID編程
13.3.1 讀取RFID應答器的出廠數(shù)據(jù)
13.3.2 RFID開發(fā)流程
13.3.3 操作RFID應答器的值塊
13.3.4 操作RFID應答器讀寫塊
13.4 簡易公交收繳費系統(tǒng)
13.4.1 繳費系統(tǒng)
13.4.2 收費系統(tǒng)
第14章 實時時鐘——RTC
14.1 RTC簡介
14.2 DS1302集成電路
14.3 DS1302工作原理
14.3.1 CE和時鐘控制
14.3.2 數(shù)據(jù)輸入和輸出
14.3.3 時鐘/日歷
14.3.4 寫保護寄存器
14.3.5 RAM寄存器
14.3.6 涓流充電寄存器
14.4 寄存器的突發(fā)模式
14.5 第三方庫ds1302
14.5.1 ds1302簡介
14.5.2 使用ds1302庫設置日期和時間
14.5.3 使用ds1302庫讀取日期和時間
14.6 簡易LED時鐘
第15章 伺服電機和步進電機
15.1 伺服電機
15.1.1 伺服電機工作原理
15.1.2 伺服電機與Arduino
15.1.3 使用Arduino官方庫Servo
15.2 使用其他器件控制伺服電機
15.2.1 使用旋轉電位器控制伺服電機
15.2.2 使用按鈕開關控制伺服電機
15.2.3 使用游戲搖桿控制伺服電機
15.2.4 使用遙控器控制伺服電機
15.3 步進電機
15.3.1 步進電機工作原理
15.3.2 步進電機的類型
15.3.3 28BYJ-48和ULN2003
15.3.4 Arduino、ULN2003和28BYJ-48連接
15.3.5 使用Arduino的官方庫Stepper
15.3.6 自己實現(xiàn)28BYJ-48的控制函數(shù)
第3篇 Arduino實例篇
第16章 用Arduino做游戲——打地鼠
16.1 需求分析
16.2 打地鼠——雛形
16.2.1 實現(xiàn)隨機“地鼠”
16.2.2 按鈕邏輯
16.2.3 整合代碼
16.3 打地鼠——高級
16.3.1 加入擊中動畫
16.3.2 加入隨機速度
16.3.3 整合代碼
16.4 打地鼠——終極
16.4.1 加入積分系統(tǒng)
16.4.2 將分數(shù)顯示在LED上
16.4.3 整合代碼