定 價(jià):¥89.00
作 者: | (美)Jim Strickland |
出版社: | 機(jī)械工業(yè)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787111630876 | 出版時(shí)間: | 2019-08-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 284 | 字?jǐn)?shù): |
譯者序
前言
作者簡(jiǎn)介
審校者簡(jiǎn)介
第1章 采購(gòu)清單 1
1.1 樹莓派 1
1.1.1 3B+型樹莓派 1
1.1.2 為何購(gòu)買3B+型樹莓派 4
1.1.3 Zero W型樹莓派 4
1.1.4 為何購(gòu)買Zero W型樹莓派 5
1.1.5 適配器 6
1.1.6 其他型號(hào)的樹莓派 7
1.2 樹莓派的GPIO分線板 7
1.3 5V USB微型電源 9
1.4 集成電路 10
1.4.1 ATmega328P-PU 10
1.4.2 16MHz TTL時(shí)鐘振蕩器 11
1.4.3 74LVC245A八進(jìn)制總線收發(fā)器 12
1.5 LED 13
1.5.1 10段光帶 13
1.5.2 普通LED 14
1.6 microSD卡 14
1.7 USB閃存設(shè)備 15
1.8 電阻 15
1.9 連接線和面包板 16
1.10 微動(dòng)開關(guān) 17
1.11 焊接工具和技巧 17
1.12 關(guān)于供貨商 18
1.13 關(guān)于元器件 18
1.14 元器件一覽 18
第2章 結(jié)識(shí)樹莓派 20
2.1 簡(jiǎn)介 20
2.1.1 Windows 20
2.1.2 MacOS X 20
2.1.3 Linux 20
2.2 所需工具 21
2.3 硬件設(shè)置 21
2.3.1 3B+型樹莓派 21
2.3.2 Zero W型樹莓派 22
2.3.3 兩型樹莓派 22
2.4 用NOOBS安裝Raspbian 22
2.4.1 什么是NOOBS 22
2.4.2 什么是Raspbian 23
2.4.3 格式化microSD卡 24
2.4.4 下載NOOBS 29
2.4.5 安裝NOOBS 30
2.5 啟動(dòng)NOOBS 32
2.6 排除故障 32
2.7 安裝Raspbian 33
2.8 本章小結(jié) 36
第3章 Linux基礎(chǔ) 37
3.1 導(dǎo)航 37
3.1.1 桌面 37
3.1.2 終端應(yīng)用程序 38
3.1.3 網(wǎng)絡(luò)瀏覽器 39
3.1.4 桌面的背后 39
3.2 重啟和關(guān)閉樹莓派 40
3.2.1 在GUI/桌面中啟動(dòng)和關(guān)閉樹莓派 40
3.2.2 在終端中啟動(dòng)和關(guān)閉樹莓派 40
3.2.3 命令摘要 42
3.3 配置 42
3.3.1 樹莓派的配置應(yīng)用程序 42
3.3.2 WiFi和網(wǎng)絡(luò)配置 44
3.4 安裝和更新軟件 44
3.4.1 GUI軟件安裝程序 44
3.4.2 apt-get包管理器 44
3.5 文件系統(tǒng)導(dǎo)航 50
3.5.1 GUI/桌面 50
3.5.2 終端 53
3.5.3 所在何處 54
3.5.4 目錄中有什么 55
3.5.5 創(chuàng)建文件 58
3.5.6 刪除文件 59
3.5.7 創(chuàng)建目錄 60
3.5.8 刪除目錄和文件 61
3.5.9 小結(jié) 63
3.6 權(quán)限和特權(quán) 63
3.6.1 用戶和組 64
3.6.2 root和sudo 67
3.7 內(nèi)存和驅(qū)動(dòng)程序 70
3.7.1 內(nèi)存 70
3.7.2 驅(qū)動(dòng)程序 70
3.8 術(shù)語 71
3.9 本章小結(jié) 72
第4章 結(jié)識(shí)C++ 73
4.1 Arduino包的內(nèi)容 73
4.1.1 在樹莓派上安裝Arduino 73
4.1.2 IDE 76
4.1.3 編譯器 76
4.1.4 函數(shù)庫(kù) 78
4.1.5 上傳程序 79
4.2 結(jié)識(shí)Geany 79
4.3 設(shè)置Geany 82
4.4 編寫第一個(gè)C++程序 87
4.4.1 C++編程方式 87
4.4.2 TicTac程序 90
4.5 本章小結(jié) 109
第5章 結(jié)識(shí)WiringPi 110
5.1 什么是WiringPi 110
5.2 WiringPi函數(shù) 110
5.2.1 設(shè)置函數(shù) 111
5.2.2 接線函數(shù) 111
5.2.3 線程函數(shù) 113
5.2.4 中斷函數(shù) 114
5.2.5 定時(shí)函數(shù) 115
5.3 GPIO命令行工具 117
5.4 GPIO組和權(quán)限 118
5.5 在Geany中調(diào)用WiringPi 119
5.6 搭建拉森(紀(jì)念)掃描器 119
5.6.1 所需工具 120
5.6.2 歐姆定律 121
5.6.3 電路連接示意 122
5.6.4 電路搭建 122
5.6.5 項(xiàng)目 123
5.6.6 程序 124
5.6.7 首次運(yùn)行程序 126
5.6.8 代碼 127
5.7 本章小結(jié) 129
第6章 輸入和輸出 130
6.1 所需工具 130
6.2 修改后的電路 130
6.2.1 微動(dòng)開關(guān) 130
6.2.2 上拉電阻和下拉電阻 132
6.3 Button_Polled項(xiàng)目 132
6.3.1 項(xiàng)目概述 132
6.3.2 修改代碼 133
6.3.3 代碼 134
6.4 Button_Interrupt項(xiàng)目 137
6.4.1 項(xiàng)目概述 137
6.4.2 修改代碼 138
6.4.3 代碼 141
6.5 本章小結(jié) 144
第7章 一臺(tái)樹莓派和多個(gè)進(jìn)程 145
7.1 進(jìn)程 145
7.2 設(shè)計(jì)多進(jìn)程拉森掃描器 146
7.2.1 fork命令 147
7.2.2 控制信號(hào) 147
7.2.3 修改代碼 148
7.3 代碼 152
7.4 運(yùn)行程序 157
7.5 Linux中的進(jìn)程 158
7.6 本章小結(jié) 160
第8章 單進(jìn)程和多線程 161
8.1 進(jìn)程與內(nèi)存 161
8.1.1 內(nèi)核空間 162
8.1.2 堆棧 162
8.1.3 內(nèi)存映射段 162
8.1.4 堆 162
8.1.5 BSS段 162
8.1.6 數(shù)據(jù)段 162
8.1.7 文本段 163
8.2 線程 163
8.2.1 線程函數(shù) 163
8.2.2 線程ID 164
8.2.3 創(chuàng)建線程 164
8.2.4 取消線程 164
8.2.5 流程控制 164
8.2.6 內(nèi)存保護(hù):互斥鎖 165
8.3 POSIX線程與WiringPi線程 166
8.4 Larson_pthread 167
8.4.1 工作規(guī)劃 167
8.4.2 修改代碼 167
8.4.3 代碼 169
8.5 Larson_wiringPiThread 175
8.6 本章小結(jié) 181
第9章 從樹莓派走向世界:網(wǎng)絡(luò)套接字 182
9.1 互聯(lián)網(wǎng)上的小裝置 182
9.2 安全性 182
9.3 網(wǎng)絡(luò)簡(jiǎn)介 183
9.3.1 TCP/IP端口和套接字 183
9.3.2 IPv4和IPv6 184
9.3.3 域名服務(wù) 185
9.3.4 客戶端和服務(wù)器 185
9.4 程序 186
9.5 規(guī)劃 186
9.5.1 gpio_class類 187
9.5.2 socket_class類 188
9.5.3 main()函數(shù) 189
9.5.4 關(guān)于std::string類的一些討論 18