Arduino開發實戰指南:AVR篇

Arduino開發實戰指南:AVR篇

《Arduino開發實戰指南:AVR篇》是2012年02月機械工業出版社出版發行的實體書,作者是程晨。本書首先介紹Arduino的一些基礎知識,接著針對具體套用介紹了一些擴展板以及Arduino擴展庫,最後套用之前的內容完成了具有視頻監控功能的履帶車、遙控機械臂以及雙足機器人的製作。

出版信息

出版社:機械工業出版社

出版時間:2012年02月

版次:1-1

開本:16

開卷分類:計算機

內容簡介

Arduino是一個注重實際動手操作的產品,所以本書以實際套用為紐帶將各個章節聯繫起來。書內容循序漸進,圖文並茂,可以帶領讀者走入Arduino的精彩世界。本書適合電子專業、互動設計專業、新媒體技術專業學生閱讀,也可以作為所有電子愛好者開展Arduino製作項目的參考手冊。

圖書目錄

前言

第一篇 基礎篇

第1章 初識Arduino

1.1 Arduino的歷史

1.2 Arduino的家族

1.3 Arduino的資源

1.4 Arduino的開發環境

1.5 添加新硬體及設定開發環境

1.6 Arduino開發環境的套用

第2章 編寫Arduino程式

2.1 繪製流程圖

2.1.1 流程圖基本符號

2.1.2 流程圖的三種基本結構

2.2 C語言的標識符與關鍵字

2.2.1 標識符

2.2.2 關鍵字

2.2.3 運算符

2.2.4 分隔設定

2.2.5 常量

2.2.6 注釋符

2.3 控制語句

2.3.1 if語句

2.3.2 switch語句

2.3.3 while語句

2.3.4 do-while語句

2.3.5 for語句

2.3.6 break語句

2.3.7 continue語句

2.3.8 goto語句

2.4 程式結構

第3章 Arduino的基本函式

3.1 數字I/O

3.1.1 pinMode(pin,mode)

3.1.2 digitalWrite(pin,value)

3.1.3 digitalRead(pin)

3.2 模擬I/O

3.2.1 analogReference(type)

3.2.2 analogRead(pin)

3.2.3 analogWrite(pin, value)

3.3 高級I/O

3.3.1 shiftOut(dataPin,clockPin, bitOrder,val)

3.3.2 pulseIn(pin,state,timeout)

3.4 時間函式

3.4.1 millis( )

3.4.2 delay(ms)

3.4.3 delayMicroseconds(us)

3.5 數學庫

3.5.1 min(x,y)

3.5.2 max(x,y)

3.5.3 abs(x)

3.5.4 constrain(amt,low,high)

3.5.5 map(x,in_min,in_max,out_min, out_max)

3.5.6 三角函式

3.6 隨機數

3.6.1 randomSeed(seed)

3.6.2 random(howsmall,howbig)

3.7 位操作

3.8 中斷函式

3.8.1 interrupts( )和noInterrupts( )

3.8.2 attachInterrupt(interrupt,function,mode)

3.9 串口通信

3.10 SPI接口

3.10.1 SPI接口概述

3.10.2 SPI接口數據傳輸

3.10.3 SPI類及其成員函式

第4章 Arduino硬體平台

4.1 Arduino的原理圖

4.2 串列通信口的使用

4.2.1 實例功能

4.2.2 硬體電路

4.2.3 程式設計

4.3 數字I/O口的使用

4.3.1 實例功能

4.3.2 硬體電路

4.3.3 程式設計

4.4 模擬I/O口的使用

4.4.1 實例功能

4.4.2 硬體電路

4.4.3 程式設計

4.5 燒寫引導程式

4.5.1 下載器AVRISP

4.5.2 AVR Studio

4.5.3 燒寫引導程式

第二篇 模組篇

第5章 Arduino基本擴展模組

5.1 L293 Motor Shield

5.1.1 直流電機的工作原理

5.1.2 H橋驅動電路

5.1.3 線性放大調速原理

5.1.4 PWM調速原理

5.1.5 L293 Motor Shield的原理

5.1.6 L293 Motor Shield的套用

5.1.7 程式設計

5.1.8 程式分析

5.1.9 程式的精練

5.2 Input Shield

5.2.1 Input Shield原理圖

5.2.2 Input Shield的實例

5.2.3 程式設計

5.2.4 程式分析

5.2.5 使用搖桿控制直流電機轉速

5.3 LCD Keypad Shield

5.3.1 液晶顯示原理

5.3.2 標準1602液晶模組

5.3.3 1602液晶模組控制方式

5.3.4 LCD Keypad Shield原理圖

5.3.5 LCD Keypad Shield套用實例

5.3.6 程式設計

5.3.7 程式分析

5.3.8 Arduino的液晶控制方式

5.3.9 “hello Arduino!”

5.4 Ethernet Shield

5.4.1 Ethernet Shield原理圖

5.4.2 W5100晶片介紹

5.4.3 W5100晶片的暫存器

5.4.4 W5100晶片的使用

5.4.5 Ethernet Shield套用實例

5.4.6 程式設計

5.5 I/O擴展板

5.5.1 Xbee感測器擴展板V5

5.5.2 伺服電機控制

5.5.3 伺服電機套用實例

5.5.4 Interface shield

5.5.5 RGB LED Module

5.5.6 RGB LED Module套用實例

5.5.7 程式的精練

第6章 Arduino的擴展庫

6.1 Arduino擴展庫介紹

6.1.1 Arduino擴展庫的作用

6.1.2 Arduino擴展庫的套用

6.2 對象和類

6.2.1 類的定義

6.2.2 對象的創建及成員函式的調用

6.2.3 對象的初始化和構造函式

6.2.4 函式的重載

6.2.5 析構函式

6.3 LiquidCrystal庫

6.3.1 構造函式

6.3.2 command( )和write( )

6.3.3 begin( )

6.3.4 clear( )

6.3.5 home( )

6.3.6 setCursor( )

6.3.7 noDisplay( )和display( )

6.3.8 cursor( )和noCursor( )

6.3.9 blink( )和noBlink( )

6.3.10 autoscroll( )和

noAutoscroll( )

6.3.11 scrollDisplayLeft( )和scrollDisplayRight( )

6.3.12 print( )

6.4 Ethernet庫

6.4.1 EthernetClass類定義

6.4.2 Server類定義

6.4.3 Server類構造函式

6.4.4 Server類成員函式

6.4.5 Client類定義

6.4.6 Client類構造函式

6.4.7 Client類成員函式

6.5 SoftwareSerial庫

6.5.1 構造函式

6.5.2 begin( )

6.5.3 read( )

6.5.4 print( )和println( )

6.5.5 使用限制

6.6 EEPROM庫

6.6.1 read( )

6.6.2 write( )

6.7 Wire庫

6.7.1 IIC匯流排概述

6.7.2 TwoWire類定義

6.7.3 begin( )

6.7.4 requestFrom( )

6.7.5 available ( )

6.7.6 receive( )

6.7.7 beginTransmission( )

6.7.8 endTransmission( )

6.7.9 send( )

6.7.10 onReceive( )

6.7.11 onRequest( )

6.8 Servo庫

6.8.1 構造函式

6.8.2 attach()

6.8.3 write( )

6.8.4 writeMicroseconds( )

6.8.5 read( )

6.8.6 readMicroseconds( )

6.8.7 attached( )

6.8.8 detach( )

6.9 Stepper庫

6.9.1 步進電機概述

6.9.2 步進電機的基本參數

6.9.3 步進電機的優缺點

6.9.4 步進電機的工作原理

6.9.5 步進電機的控制電路

6.9.6 Stepper類定義

6.9.7 構造函式

6.9.8 setSpeed( )

6.9.9 step( )

6.10 TLC5940庫

6.10.1 Tlc5940類的定義

6.10.2 init( )

6.10.3 update( )

6.10.4 set( )

6.10.5 get( )

6.10.6 setAll( )

6.10.7 clear( )

6.11 OneWire庫

6.11.1 單匯流排的結構

6.11.2 單匯流排控制方式

6.11.3 單匯流排信號形式

6.11.4 OneWire類

6.11.5 構造函式

6.11.6 reset( )

6.11.7 write_bit( )

6.11.8 read_bit( )

6.11.9 write( )

6.11.10 read( )

6.11.11 select( )

6.11.12 skip( )

6.12 XBee庫

6.12.1 XBee類定義

6.12.2 構造函式

6.12.3 begin( )

6.12.4 readPacket( )

6.12.5 send( )

6.13 創建自己的庫

6.13.1 庫的功能—Morse

6.13.2 MorseCode類的定義

6.13.3 MorseCode類的成員函式

6.13.4 MorseCode庫的使用

6.13.5 關鍵字的定義

第7章 無線模組的套用

7.1 APC220

7.1.1 APC220性能指標

7.1.2 模組引腳定義

7.1.3 模組的使用

7.1.4 注意事項

7.2 DFduino wireless

7.2.1 DFduino wireless性能指標

7.2.2 模組引腳定義

7.2.3 模組的使用

7.3 Bluetooth V3

7.3.1 Bluetooth V3性能指標

7.3.2 模組引腳定義

7.3.3 模組的使用

7.4 XBee和XBee PRO

7.4.1 XBee及XBee PRO性能指標

7.4.2 模組引腳定義

7.4.3 模組的使用

7.4.4 程式設計

第三篇 套用篇

第8章 打造自己的遙控履帶車

8.1 履帶車的驅動

8.1.1 實現功能

8.1.2 所需器材

8.1.3 硬體連線

8.1.4 程式設計

8.1.5 MotorCar類

8.1.6 類的套用

8.2 添加感知器件

8.2.1 實現功能

8.2.2 所需器材

8.2.3 器材介紹

8.2.4 硬體連線

8.2.5 程式設計

8.3 添加無線模組

8.3.1 實現功能

8.3.2 所需器材

8.3.3 硬體連線

8.3.4 程式設計

8.4 製作遙控器

8.4.1 實現功能

8.4.2 所需器材

8.4.3 硬體連線

8.4.4 程式設計

8.5 履帶車遙控調速

8.5.1 實現功能

8.5.2 程式設計

8.6 添加無線攝像頭

8.6.1 實現功能

8.6.2 所需器材

8.6.3 器材介紹

8.6.4 硬體連線

8.6.5 程式設計

8.7 環境信息獲取器件

8.7.1 實現功能

8.7.2 所需器材

8.7.3 器材介紹

8.7.4 硬體連線

8.7.5 程式設計

第9章 仿生機器人

9.1 遙控機械臂

9.1.1 實例功能

9.1.2 器材列表

9.1.3 搭建硬體環境

9.1.4 安裝控制部分

9.1.5 Wii遊戲手柄

9.1.6 機械臂程式設計

9.2 雙足機器人

9.2.1 實例功能

9.2.2 器材列表

9.2.3 搭建硬體環境

9.2.4 雙足機器人程式設計

9.2.5 PC調試軟體編寫

9.2.6 雙足機器人的調試

附錄A Arduino引腳與AVR單片機管腳對應關係

附錄B Arduino擴展板

附錄C 其他可擴展模組

相關詞條

熱門詞條

聯絡我們