注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)Arduino權(quán)威指南(原書第3版)

Arduino權(quán)威指南(原書第3版)

Arduino權(quán)威指南(原書第3版)

定 價(jià):¥179.00

作 者: [美]邁克爾·馬戈利斯,[美]布萊恩·杰普森,[英]尼古拉斯·羅伯特·韋爾丁
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787111763147 出版時(shí)間: 2024-11-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書是介紹Arduino基礎(chǔ)入門以及應(yīng)用的權(quán)威手冊,適合新手入門使用,也適合有經(jīng)驗(yàn)的開發(fā)者查漏補(bǔ)缺。第1章從最基礎(chǔ)的Arduino開發(fā)環(huán)境搭建講起,第2章著重講解了Arduino所用開發(fā)語言的基礎(chǔ)語法,第3章講解了用代碼實(shí)現(xiàn)數(shù)學(xué)運(yùn)算。后續(xù)各章則通過一個(gè)個(gè)應(yīng)用場景將各個(gè)技術(shù)點(diǎn)逐一展開介紹,不但提供了完整的代碼,而且詳細(xì)解釋了涉及的技術(shù)原理。本書的最后三章(即第16~18章)則介紹了開發(fā)中常用的高級技巧。

作者簡介

  Michael Margolis是實(shí)時(shí)計(jì)算領(lǐng)域的技術(shù)專家,擅長開發(fā)和實(shí)現(xiàn)用于與環(huán)境交互的軟硬件。他曾任職于索尼、微軟、朗訊貝爾實(shí)驗(yàn)室,擁有30多年的高級開發(fā)經(jīng)驗(yàn)。他為Arduino1.0官方發(fā)行版編寫過一些庫和核心軟件。Brian Jepson在領(lǐng)英學(xué)習(xí)從事設(shè)計(jì)管理和工程管理工作。Nicholas Robert Weldin在英國東倫敦大學(xué)的里克斯中心工作,幫助有學(xué)習(xí)困難的人獲取在線資源。

圖書目錄

前言1
第1章 入門指南11
1.0 概述11
1.1 安裝集成開發(fā)環(huán)境15
1.2 安裝Arduino板19
1.3 使用集成開發(fā)環(huán)境配制一個(gè)Arduino草圖 21
1.4 上傳和運(yùn)行Blink草圖24
1.5 創(chuàng)建和保存草圖25
1.6 第一個(gè)簡單的Arduino 項(xiàng)目28
1.7 使用不包含在標(biāo)準(zhǔn)發(fā)布庫中的開發(fā)板33
1.8 使用32位Arduino板(或兼容板)36
第2章 Arduino編程40
2.0 簡介40
2.1 典型的Arduino sketch41
2.2 使用簡單基本類型(變量)42
2.3 使用浮點(diǎn)數(shù)45
2.4 使用數(shù)組48
2.5 使用Arduino字符串函數(shù)51
2.6 使用C字符串56
2.7 將逗號分隔的文本拆分為組57
2.8 將數(shù)字轉(zhuǎn)換為字符串60
2.9 將字符串轉(zhuǎn)換為數(shù)字62
2.10 將代碼結(jié)構(gòu)化為功能塊65
2.11 從函數(shù)返回多個(gè)值69
2.12 條件語句72
2.13 重復(fù)一個(gè)語句序列73
2.14 用計(jì)數(shù)器重復(fù)陳述75
2.15 跳出循環(huán)77
2.16 基于單個(gè)變量采取不同的操作79
2.17 比較字符和數(shù)字值81
2.18 字符串的比較83
2.19 執(zhí)行邏輯比較85
2.20 執(zhí)行位運(yùn)算86
2.21 復(fù)合運(yùn)算和賦值88
第3章 數(shù)學(xué)運(yùn)算90
3.0 簡介90
3.1 加減乘除90
3.2 讓變量遞增或者遞減92
3.3 兩數(shù)相除的余數(shù)93
3.4 獲取絕對值94
3.5 約束一個(gè)數(shù)為指定范圍內(nèi)的值95
3.6 找出最大值或者最小值96
3.7 冪運(yùn)算97
3.8 計(jì)算平方根98
3.9 浮點(diǎn)數(shù)向上和向下取整98
3.10 三角函數(shù)99
3.11 隨機(jī)數(shù)100
3.12 設(shè)置和讀取位103
3.13 移位操作107
3.14 截取整型或者長整型的高位和低位字節(jié)108
3.15 通過高字節(jié)和低字節(jié)組成一個(gè)整型或者長整型110
第4章 串口通信113
4.0 簡介113
4.1 從Arduino發(fā)送消息到計(jì)算機(jī)119
4.2 發(fā)送格式化的文本和數(shù)值數(shù)據(jù)123
4.3 Arduino接收串口數(shù)據(jù)128
4.4 在單條消息中發(fā)送多個(gè)文本字段132
4.5 在Arduino上從單條消息中接收多個(gè)文本字段139
4.6 從Arduino發(fā)送二進(jìn)制數(shù)據(jù)141
4.7 在計(jì)算機(jī)上接收來自Arduino的二進(jìn)制數(shù)據(jù)146
4.8 從Processing發(fā)送二進(jìn)制數(shù)據(jù)到Arduino148
4.9 發(fā)送多個(gè)Arduino引腳的值151
4.10 將Arduino數(shù)據(jù)記錄到計(jì)算機(jī)文件中155
4.11 發(fā)送數(shù)據(jù)到多個(gè)串口設(shè)備158
4.12 從多個(gè)串口設(shè)備接收數(shù)據(jù)162
4.13 在樹莓派上使用Arduino167
第5章 簡單的數(shù)字輸入和模擬輸入172
5.0簡介172
5.1使用開關(guān)176
5.2使用一個(gè)無外部電阻器的開關(guān)179
5.3 按下開關(guān)時(shí)進(jìn)行可靠的檢測(去抖動(dòng))181
5.4確定開關(guān)被按下的時(shí)間184
5.5讀取鍵盤189
5.6讀取模擬值192
5.7 改變數(shù)值范圍194
5.8 讀取6個(gè)以上的模擬輸入196
5.9測量5V內(nèi)的電壓199
5.10 響應(yīng)電壓變化202
5.11測量大于5V的電壓(分壓器)204
第6章 獲取傳感器的輸入206
6.0 簡介206
6.1 一個(gè)內(nèi)置多個(gè)傳感器的Arduino208
6.2 運(yùn)動(dòng)檢測211
6.3 檢測光強(qiáng)214
6.4 檢測生物的動(dòng)作216
6.5 測量距離218
6.6 精確測量距離223
6.7 檢測振動(dòng)225
6.8 檢測聲音227
6.9 測量溫度231
6.10 讀取 RFID(NFC)標(biāo)簽235
6.11 追蹤旋轉(zhuǎn)動(dòng)作238
6.12 在繁忙程序里使用中斷追蹤旋轉(zhuǎn)動(dòng)作241
6.13 使用鼠標(biāo)243
6.14 從GPS獲取位置信息247
6.15 使用陀螺儀檢測旋轉(zhuǎn)252
6.16 檢測方向254
6.17 讀取加速度計(jì)257
第7章 可視化輸出260
7.0 簡介260
7.1 連接和使用LED264
7.2 調(diào)節(jié)LED的亮度267
7.3 驅(qū)動(dòng)高能耗LED268
7.4 調(diào)節(jié)LED的顏色270
7.5 控制大量彩色LED273
7.6 串聯(lián)多個(gè)LED:繪制條形圖276
7.7 串聯(lián)多個(gè)LED:流水序列281
7.8 用Multiplexing控制LED矩陣282
7.9 用LED矩陣顯示圖像286
7.10 控制LED矩陣:查理復(fù)用算法289
7.11 驅(qū)動(dòng)7段LED295
7.12 驅(qū)動(dòng)多位7段顯示屏:多路復(fù)用298
7.13 用最少的引腳驅(qū)動(dòng)多位7段顯示屏300
7.14 用MAX72xx移位寄存器控制一組LED302
7.15 使用PWM擴(kuò)展芯片實(shí)現(xiàn)增加模擬輸出數(shù)量304
7.16 用模擬面板儀表作為輸出307
第8章 物理輸出309
8.0 簡介309
8.1使用伺服控制旋轉(zhuǎn)位置312
8.2使用電位計(jì)或傳感器控制伺服旋轉(zhuǎn)314
8.3 控制連續(xù)旋轉(zhuǎn)伺服裝置的速度316
8.4 使用計(jì)算機(jī)命令控制伺服系統(tǒng)318
8.5驅(qū)動(dòng)無刷電機(jī)(使用hobby伺服速度控制器)319
8.6 控制電磁閥和繼電器320
8.7 使物體振動(dòng)322
8.8 使用晶體管驅(qū)動(dòng)有刷電機(jī)324
8.9 用H橋控制有刷電機(jī)的方向326
8.10用H橋控制有刷電機(jī)的方向和速度329
8.11使用傳感器控制有刷電機(jī)的方向和速度331
8.12 驅(qū)動(dòng)雙極步進(jìn)電機(jī)337
8.13 驅(qū)動(dòng)雙極步進(jìn)電機(jī)(使用易驅(qū)板)340
8.14 使用ULN2003A驅(qū)動(dòng)步進(jìn)電機(jī)343
第9章 音頻輸出346
9.0 簡介346
9.1 播放音調(diào)349
9.2 演奏簡單的旋律351
9.3 同時(shí)產(chǎn)生多個(gè)音調(diào)353
9.4 在不干擾PWM的情況下生成音頻音調(diào)355
9.5 控制MIDI357
9.6 制作音頻合成器360
9.7 實(shí)現(xiàn)高質(zhì)量音頻合成362
第10章 遠(yuǎn)程控制外部設(shè)備365
10.0 簡介365
10.1 響應(yīng)紅外遙控器366
10.2 解碼紅外遙控信號368
10.3 模擬遠(yuǎn)程控制信號372
10.4 控制數(shù)碼相機(jī)375
10.5 通過Hack遠(yuǎn)程控制開關(guān)控制交流設(shè)備377
第11章 使用顯示屏381
11.0 簡介381
11.1連接和使用文字LCD381
11.2 文本格式化385
11.3 打開或關(guān)閉光標(biāo)和顯示屏388
11.4 滾動(dòng)文本389
11.5 顯示特殊符號392
11.6 創(chuàng)建自定義字符395
11.7 顯示大于單個(gè)字符的符號397
11.8 顯示小于單個(gè)字符的像素400
11.9 選擇圖形LCD402
11.10 控制全彩LCD404
11.11 控制單色OLED407
第12章 使用時(shí)間和日期412
12.0 簡介412
12.1 使用毫秒確定持續(xù)時(shí)間412
12.2 在代碼中創(chuàng)建暫停413
12.3 更精確地測量脈沖的持續(xù)時(shí)間417
12.4 使用Arduino作為時(shí)鐘419
12.5 創(chuàng)建定時(shí)任務(wù)以定期調(diào)用函數(shù)427
12.6 使用實(shí)時(shí)時(shí)鐘430
第13章 利用I2C和SPI進(jìn)行通信435
13.0 簡介435
13.1 連接多個(gè)I2C設(shè)備441
13.2 連接多個(gè)SPI設(shè)備444
13.3 使用I2C集成電路447
13.4 使用I2C端口擴(kuò)展器增加I/O450
13.5 兩個(gè)或多個(gè)Arduino板之間的通信454
13.6 使用Wii nunchuck加速度計(jì)458
第14章 簡單的無線通信464
14.0簡介464
14.1 使用低成本無線模塊發(fā)送消息464
14.2 通過ZigBee或802.15.4網(wǎng)絡(luò)連接Arduino471
14.3 向指定XBee發(fā)送消息478
14.4在XBee之間發(fā)送傳感器數(shù)據(jù)481
14.5 激活連接到XBee的執(zhí)行器486
14.6 與經(jīng)典藍(lán)牙設(shè)備通信491
14.7 與藍(lán)牙低能耗設(shè)備通信494
第15章 Wi-Fi和以太網(wǎng)497
15.0 簡介497
15.1 連接到以太網(wǎng)499
15.2 自動(dòng)獲取你的IP地址503
15.3 發(fā)送和接收簡單消息(UDP)504
15.4 使用帶有內(nèi)置Wi-Fi的Arduino512
15.5 使用低成本模塊連接到Wi-Fi515
15.6從Web響應(yīng)中提取數(shù)據(jù)520
15.7 使用XML從Web服務(wù)器請求數(shù)據(jù)525
15.8 將Arduino設(shè)置為Web服務(wù)器527
15.9 處理傳入的Web請求532
15.10 處理特定頁面的傳入請求536
15.11 使用HTML格式化Web服務(wù)器響應(yīng)541
15.12 使用表單請求Web數(shù)據(jù)(POST)545
15.13 提供包含大量數(shù)據(jù)的網(wǎng)頁 549
15.14 發(fā)送Twitter消息556
15.15 物聯(lián)網(wǎng)數(shù)據(jù)交換558
15.16 向MQTT代理發(fā)布數(shù)據(jù)559
15.17 從MQTT消息服務(wù)訂閱數(shù)據(jù)561
15.18 從互聯(lián)網(wǎng)時(shí)間服務(wù)器獲取時(shí)間563
第16章 庫的使用、修改和創(chuàng)建569
16.0 簡介569
16.1 使用內(nèi)建的庫569
16.2 安裝第三方庫572
16.3 修改庫574
16.4 創(chuàng)建自己的庫578
16.5 基于其他庫開發(fā)新庫583
16.6 更新第三方庫適配Arduino 1.0589
第17章 高級編程和內(nèi)存操作591
17.0 簡介591
17.1 理解Arduino編譯過程592
17.2 確定已用和空閑RAM的數(shù)量595
17.3 在程序存儲器中保存和查找數(shù)值598
17.4 在程序存儲器中保存和查找字符串601
17.5 利用#define 和const 代替整數(shù)603
17.6 使用條件編譯604
第18章 使用控制器芯片硬件607
18.0 簡介607
18.1 在EEPROM中持久存儲數(shù)據(jù)611
18.2 當(dāng)引腳狀態(tài)發(fā)生變化時(shí)自動(dòng)響應(yīng)615
18.3 執(zhí)行重復(fù)任務(wù)617
18.4 設(shè)置定時(shí)器脈沖寬度和持續(xù)時(shí)間620
18.5 創(chuàng)建脈沖發(fā)生器621
18.6 改變定時(shí)器的PWM頻率624
18.7 脈沖計(jì)數(shù)626
18.8 更精確地測量脈沖628
18.9 快速測量模擬值631
18.10 降低電池消耗633
18.11 快速設(shè)置數(shù)字引腳635
18.12 使用編程器上傳sketch638
18.13 替換Arduino的bootloader639
18.14 移動(dòng)PC或者M(jìn)ac的鼠標(biāo)指針640
附錄A 電子元件643
附錄B 使用原理圖和數(shù)據(jù)手冊647
附錄C 構(gòu)建和連接電路652
附錄D 軟件異常排查655
附錄E 硬件排錯(cuò)技巧659
附錄F 數(shù)字和模擬引腳661
附錄G ASCII和擴(kuò)展字符集664

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.autoforsalebyowners.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號