MicroPython 入門指南 MicroPython入门指南

邵子揚

  • 出版商: 電子工業
  • 出版日期: 2018-01-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • 頁數: 288
  • 裝訂: 平裝
  • ISBN: 7121328461
  • ISBN-13: 9787121328466
  • 相關分類: Python
  • 立即出貨

買這商品的人也買了...

商品描述

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

作者簡介

邵子揚,資深嵌入式和無線應用工程師,開源硬件愛好者,MicroPython/micro:bit中文社區創始人。

目錄大綱

第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