JavaScript物聯網硬體編程

JavaScript物聯網硬體編程

《JavaScript物聯網硬體編程》是2019年8月清華大學出版社出版的圖書,作者是[美]、麗薩·丹吉·加德納(Lyza Danger Gardner)。

基本介紹

  • 中文名:JavaScript物聯網硬體編程
  • 作者:[美]麗薩·丹吉·加德納(Lyza Danger Gardner)
  • 譯者:戢禮晉、譚少輝、許琛
  • 出版社:清華大學出版社
  • 出版時間:2019年08月
  • 定價:98 元
  • ISBN:9787302531098
內容簡介,圖書目錄,

內容簡介

● 使用JavaScript控制硬體
● 設計和組裝機器人和套件
● 一份電子電路的速成教程
● 十幾個實踐項目

圖書目錄

第Ⅰ部分 針對JavaScript開發者的硬體介紹
第1 章 將JavaScript與硬體結合 3
1.1 硬體項目剖析 4
1.1.1 輸入與輸出 4
1.1.2 處理過程 5
1.1.3 電源、電路和系統 6
1.1.4 邏輯和固件 8
1.1.5 外殼和封裝 9
1.2 JavaScript和硬體如何協同工作 10
1.2.1 宿主機-客戶端方法 10
1.2.2 嵌入式JavaScript 13
1.2.3 其他硬體-JavaScript組合 15
1.3 JavaScript非常適合硬體項目嗎 18
1.4 整合硬體工具包 19
1.4.1 開發板 19
1.4.2 輸入和輸出元件 20
1.4.3 其他電子元件 21
1.4.4 電源、電線和附屬檔案 21
1.4.5 工具 22
1.5 本章小結 24
第2 章 用Arduino開啟硬體之旅 25
2.1 了解Arduino Uno 27
2.2 使用Arduino的工作流程 32
2.2.1 Arduino Uno的數字引腳 32
2.2.2 草圖和Arduino IDE 33
2.2.3 將LED連線到數字引腳 35
2.2.4 對LED進行編程使其閃爍 36
2.3 使用JavaScript控制Arduino 39
2.3.1 將Arduino配置為客戶端 39
2.3.2 安裝Node.js框架Johnny-Five 41
2.3.3 用Johnny-Five讓Hello World的LED閃爍 42
2.3.4 Firmata、Johnny-Five和宿主機-客戶端方法 42
2.3.5 使用Johnny-Five組織腳本 44
2.4 本章小結 46
第3 章 如何構建電路 47
3.1 電壓、電流和電阻 48
3.1.1 歐姆定律 52
3.1.2 問題和危險 54
3.2 構建電路 55
3.2.1 使用麵包板製作原型電路 55
3.2.2 在麵包板上連線簡單的LED電路 56
3.2.3 用按鈕擴展串聯電路 63
3.2.4 串聯LED 65
3.2.5 並聯電路和分流器 69
3.2.6 用電池為項目供電 75
3.3 本章小結 76
第Ⅱ部分 項目基礎:使用Johnny-Five輸入和輸出
第4 章 感測器和輸入 81
4.1 使用模擬感測器 84
4.1.1 模數轉換 84
4.1.2 光敏電阻的使用 85
4.1.3 分壓器 89
4.1.4 布線和使用光敏電阻 92
4.1.5 使用模擬溫度感測器 97
4.2 數字輸入 101
4.3 本章小結 106
第5 章 輸出:讓事情發生 107
5.1 點亮LED 108
5.1.1 使用脈衝寬度調製(PWM)使LED變暗 109
5.1.2 使用PWM讓LED做動畫 113
5.1.3 將輸入與LED輸出結合 117
5.1.4 全彩RGB LED 122
5.1.5 構建你自己的“氣象球” 122
5.2 使用並行LCD顯示器 126
5.2.1 用LCD製作功能齊全的定時器 126
5.2.2 添加可視的LED“鈴聲” 138
5.3 用壓電器製造噪聲 141
5.4 本章小結 145
第6 章 輸出:讓物體運動 147
6.1 讓電動機運轉 148
6.1.1 電動機的工作方式 149
6.1.2 使用按壓按鈕開關控制電動機 151
6.1.3 用Johnny-Five控制電動機 156
6.2 製作伺服器 159
6.3 製作你的第一個機器人 165
6.3.1 機器人和電動機 167
6.3.2 製作機器人的基礎底盤 169
6.3.3 控制機器人的電動機 170
6.4 本章小結 181
第Ⅲ部分 更複雜的項目
第7 章 串列通信 185
7.1 並行和串列通信數字數據 187
7.2 串列通信的基礎知識 188
7.3.1 UART 191
7.3.2 使用GPS擴展板試用軟體串口 192
7.3.3 學習焊接 194
7.3.4 構建GPS電路 198
7.4.2 I2C 202
7.4.3 使用I2C磁力計製作數字羅盤 204
7.5 整合在一起:搖動-改變多感測器部件 206
7.5.1 步驟1:將羅盤與LCD輸出相結合 207
7.5.2 步驟2:向設備中添加多感測器 210
7.5.3 步驟3:更新顯示屏,顯示溫度和壓力 211
7.5.4 步驟4:使用加速度計添加搖動-交換顯示功能 213
7.6 本章小結 217
第8 章 無線項目 219
8.1 為什麼你還要使用數據線 221
8.1.1 數據交換、I/O層和I/O外掛程式 221
8.1.2 USB充當電源 222
8.1.3 無線項目通信的選項 223
8.2 使用Tessel 2實現無線項目 225
8.3 設定Tessel 226
8.3.1 配置Tessel 226
8.3.2 在Tessel上運行“Hello World”LED閃爍代碼 229
8.3.3 通過Tessel閃爍外部的LED 231
8.3.4 探索Tessel的引腳和功能 235
8.4 基於Tessel的無線項目 236
8.5 用電池為項目供電 252
8.6 本章小結 259
第9 章 自己製作硬體 261
9.1 消費電子產品開發 263
9.2 用Johnny-Five外掛程式控制遠程開關 270
9.2.1 開關項目的原型設計 270
9.2.2 編寫RemoteSwitch外掛程式 274
9.3 編寫複雜硬體的軟體 280
9.3.1 項目:Johnny-Five支持APDS-9660手勢感測器 281
9.3.2 實現構造函式和初始化方法 293
9.3.3 集成手勢感測器和遠程開關 299
9.3.4 將整個項目整合在一起 303
9.4 本章小結 305
第Ⅳ部分 在其他環境中的硬體上使用JavaScript
第10 章 JavaScript和受限制的硬體 309
10.1 Espruino Pico平台 311
10.1.1 設定Pico 312
10.1.2 Hello World版的LED閃爍 313
10.2 了解新平台 315
10.2.1 了解平台的核心功能 316
10.2.2 查找引腳圖 318
10.2.3 了解配置和工作流程 319
10.2.4 查找示例和教程 319
10.2.5 使用API參考文檔 319
10.3 試驗Pico 320
10.3.1 Pico和BMP180多感測器 320
10.3.2 Pico和Nokia 5110液晶顯示器 323
10.3.3 使用Pico構建高效的天氣小工具 329
10.4 試驗Kinoma Element平台 332
10.4.1 Element的核心功能 333
10.4.2 引腳和硬體圖 333
10.4.3 配置、管理和工作流程 334
10.4.4 示例和教程 335
10.4.5 API參考 336
10.4.6 案例研究項目:實時更新羅盤讀數 336
10.5 本章小結 344
第11 章 使用Node.js和微型計算機進行硬體開發 347
11.1 使用微型計算機 349
11.1.1 Raspberry Pi 平台 350
11.1.2 配置方式1:傳統方式 354
11.1.3 配置方式2:無頭配置 355
11.2 了解Raspberry Pi 3 359
11.2.1 核心特性 359
11.2.2 GPIO特性和引腳 361
11.2.3 配置和工作流程 362
11.2.4 示例和教程 365
11.2.5 API文檔 372
11.3 為不同的平台編寫JohnnyFive應用程式 372
11.3.1 改造迷你氣象站使其適配Pi 3 373
11.3.2 改造迷你氣象站使其適配Arduino Uno 379
11.4 使用Raspberry Pi作為宿主機 380
11.5 案例研究:BeagleBone Black 381
11.5.1 BeagleBone Black 381
11.5.2 氣象站程式針對BeagleBone進行適配 387
11.6 本章小結 388
第12 章 在雲端、在瀏覽器中以及更多可能性 391
12.1 IoT與雲 392
12.2 使用resin.io進行容器化部署 394
12.2.1 創建resin.io應用程式 396
12.2.2 配置BeagleBone Black 397
12.2.3 適配天氣應用程式軟體 399
12.3 硬體和Web瀏覽器 404
12.3.1 Web藍牙API 405
12.3.2 通用感測器API 405
12.3.3 Physical Web 405
12.4 使用Puck.js探索Bluetooth LE 406
12.4.1 核心特性 407
12.4.2 GPIO特性和引腳分布 408
12.4.3 配置和工作流程 409
12.4.4 示例、教程和API文檔 411
12.4.5 從網頁控制LED 411
12.4.6 Physical Web和Puck.js 417
12.4.7 基於Web的藍牙門鈴 419
12.5 開拓JavaScript硬體編程的邊界 431
12.6 本章小結 431

相關詞條

熱門詞條

聯絡我們