開啟主選單

求真百科

MicroPython入門指南

MicroPython入門指南》,邵子揚 著,出版社: 電子工業出版社。

電子工業出版社成立於1982年10月,是工業和信息化部直屬的科技與教育出版社,每年出版新書2400餘種,音像和電子出版物400餘種,期刊8種,出版物內容涵蓋了信息科技的各個專業分支以及工業技術、經濟管理、大眾生活、少兒科普[1]等領域,綜合出版能力位居全國出版行業前列[2]

目錄

內容簡介

MicroPython是近年國外開源硬件(也是智能硬件)中*熱門的主題之一,它使用Python語言在嵌入式中編程,不需要了解底層寄存器、數據手冊、廠家的庫函數,大部分外設和常用功能都有自己的庫,使開發和移植變得容易和快速。MicroPython已經可以真正用於開發產品,這是其迅速吸引智能硬件開發者的原因。本書帶領初學者逐步了解MicroPython的基礎知識、硬件平台、開發技巧,採用大量淺顯易懂的實例,使讀者在實踐中快速入門。

目錄

第1章 MicroPython簡介 001

1.1 MicroPython是什麼 001

1.2 MicroPython的歷史 001

1.3 MicroPython的特點 004

1.4 授權 005

第2章 基礎知識 006

2.1 Python3和MicroPython 006

2.2 MicroPython的系統結構 007

2.3 安裝驅動 008

2.4 常用終端軟件 010

2.5 MicroPython的REPL 014

2.5.1 REPL的快捷鍵 014

2.5.2 使用help()函數 015

2.5.3 查看模塊包含的變量和函數 019

2.6 MicroPython官方固件 020

第3章 硬件平台介紹 023

3.1 pyboard 023

3.2 ESP8266 028

3.3 其他可以運行MicroPython的硬件 032

第4章 pyboard的使用 041

4.1 快速指南 041

4.2 從閃燈開始 047

4.3 按鍵的使用 049

4.4 GPIO的使用 050

4.4.1 GPIO的其他函數 052

4.4.2 GPIO的別名 055

4.4.3 直接用端口名稱 057

4.5 ADC模數轉換 057

4.6 DAC數模轉換 058

4.7 定時器(Timer) 063

4.8 UART 068

4.9 I2C 071

4.10 SPI 074

4.11 外中斷 076

4.12 USB_VCP 078

4.13 CAN 080

4.14 文件操作 084

4.15 小結 085

第5章 pyboard的Python標準庫和微庫 086

5.1 內置函數 087

5.2 數組(array) 088

5.3 複數運算(cmath) 089

5.4 垃圾回收(gc) 091

5.5 數學計算(math) 092

5.6 數據流事件(select) 095

5.7 系統功能(sys) 096

5.8 binary/ASCII轉換(ubinascii) 098

5.9 集合和容器類型(ucollections) 099

5.10 哈希算法庫(uhashlib) 100

5.11 堆隊列算法(uheapq) 101

5.12 輸入/輸出流(uio) 102

5.13 JSON編碼解碼(ujson) 103

5.14 「操作系統」基本服務(uos) 103

5.15 正則表達式(ure) 108

5.16 socket模塊(usocket) 110

5.17 壓縮和不壓縮原始數據類型(ustruct) 114

5.18 時間函數(utime) 115

5.19 zlib解壓縮(uzlib) 120

第6章 MicroPython特別庫 121

6.1 簡化的BTree數據庫(btree) 121

6.1.1 函數 121

6.1.2 方法 122

6.1.3 常量 123

6.1.4 例程 123

6.2 幀緩衝區操作(frambuf) 124

6.2.1 類 124

6.2.2 構造函數 125

6.2.3 繪製基本形狀 126

6.2.4 繪製文字 126

6.2.5 其他方法 126

6.2.6 常量 127

6.3 硬件相關函數(machine) 127

6.3.1 復位函數 127

6.3.2 中斷相關函數 128

6.3.3 功率管理 128

6.3.4 常量 129

6.3.5 Class 129

6.4 訪問和控制MicroPython內部(micropython) 138

6.5 使用網絡(network) 140

6.5.1 class CC3K 141

6.5.2 class WIZNET5K 143

6.6 結構化訪問二進制數據(uctypes) 144

6.6.1 定義數據結構層 145

6.6.2 模塊內容 146

6.6.3 結構說明和實例化結構對象 147

6.6.4 結構對象 147

6.6.5 限制 148

6.7 線程 148

6.7.1 基本函數 149

6.7.2 使用方法 149

第7章 pyboard專用模塊(pyb) 151

7.1 時間相關功能 151

7.2 復位功能 152

7.3 中斷相關函數 153

7.4 功耗管理 153

7.5 其他函數 154

7.6 類 158

7.6.1 加速度傳感器(Accel) 158

7.6.2 方法 158

7.6.3 例程 159

7.7 ADC 159

7.7.1 構造函數 159

7.7.2 方法 160

7.7.3 ADCAll 161

7.8 數模轉換(DAC) 163

7.8.1 構造函數 163

7.8.2 方法 163

7.9 三線舵機驅動(servo) 164

7.9.1 構造函數 165

7.9.2 方法 165

7.10 pyb和machine的區別 166

第8章 ESP8266 167

8.1 快速指南 168

8.2 ESP8266專用模塊esp 176

8.3 MicroPython標準模塊和machine模塊 179

8.4 網絡配置(network) 179

8.4.1 函數 180

8.4.2 class WLAN 180

8.4.3 構造函數 180

8.4.4 方法 181

8.4.5 連接網絡 184

8.4.6 作為http服務器 186

8.5 文件管理軟件 189

8.5.1 WebREPL 189

8.5.2 uPyLoader 193

8.5.3 MicroPython File Uploader 200

8.5.4 uPyCraft 201

第9章 使用技巧和常見問題 206

9.1 不能正確識別出PYBFlash磁盤 206

9.2 安裝虛擬串口失敗 206

9.3 PYBFLASH磁盤中文件損壞或亂碼 207

9.4 恢復出廠設置 207

9.5 怎樣升級pyboard的固件 208

9.5.1 Linux下升級固件 210

9.5.2 Nucleo開發板升級固件 211

9.6 升級ESP8266的固件 212

9.6.1 需要的軟件 212

9.6.2 固件文件 212

9.6.3 進入升級模式 213

9.6.4 esptool.py 213

9.6.5 Flash Download Tools 215

9.6.6 uPyLoader 216

9.7 訪問寄存器 217

9.7.1 方法 217

9.7.2 使用STM32的寄存器控制LED 218

第10章 MicroPython應用 219

10.1 計算圓周率 219

10.2 驅動OLED模塊 222

10.3 溫度傳感器DS1820 225

10.4 溫濕度傳感器DHT11 228

10.5 氣壓傳感器 BMP180 229

10.6 用熱敏電阻測溫度 237

10.7 在SensorTile上使用MicroPython 242

10.7.1 移植MicroPython固件 244

10.7.2 傳感器驅動 246

10.7.3 使用SensorTile製作開源智能懷表項目 261

10.8 其他MicroPython項目鏈接 270

附錄 272

參考文獻

  1. 100部科普經典名著,豆瓣,2018-04-26
  2. 關於我們,電子工業出版社