依照IEEE SPECTRUM在程式語言的排名2017-2019連續三年,Python都居於龍頭地位,除了跟人工智慧應用趨於成熟有關外,Python也能實現在嵌入式系統上,也就是上圖中在Type型別中畫有IC符號,這個領域是屬於C語言家族善長的應用領域。
本篇文章就來介紹如何使用Python所撰寫出來的程式,把它嵌入到系統晶片上,對於C語言而言,會先用編譯器將高階語言翻譯成機器語言,通常會是16進制的HEX文件檔,再把這個文件燒錄到晶片的特定位置,重新開機即可以執行。
反觀Python也就是MicroPython是採用直譯式的方式,一行一行地解譯與執行,因此在本篇文章中會介紹如何先燒錄MicroPython作業系統,再將MicroPython原始檔案傳送到系統晶片上。
1. 啟動cmd
2. 建立虛擬開發環境
mkvirtualenv
MicroPython
3. 安裝esptool
pip install
esptool
4. 建置工作目錄
mkdir
MicroPython
cd
MicroPython
5. 開啟micropython.org網頁,可以選擇上方Download功能表以及選擇ESP8266
6. 下載MicroPython韌體,就是MicroPython的作業系統
7. 把下載韌體存在MicroPython
8. 下載USB驅動程式,主要在電腦端是採用USB通訊介面,但在系統端則是採用RxD和TxD的UART通訊介面,因此需要安裝一個橋接軟體CP210x。
9. 下載並執行CP210x驅動程式
10. 將ESP8266機智雲WIFI開發板接上USB線並連上電腦USB埠
11. 從控制台開啟裝置管理員,就可以看到COM3
12. 清除韌體
esptool
--port COM3 erase_flash
13. 燒錄韌體(MicroPython的作業系統)
esptool
--port COM3 write_flash 0 esp8266-20190125-v1.10.bin
14. 安裝上傳和下載Python程式到晶片的工具
pip install
adafruit-ampy
15. 用IDLE編輯程式,儲存成led.py
from machine import Pin
import time
led = Pin(2, Pin.OUT)
while True:
led.value(0)
time.sleep(5)
led.value(1)
time.sleep(5)
16. 上傳程式和執行程式
ampy --port
COM3 put led.py
ampy --port
COM3 run --no-output led.py
17. 觀察LED,就可以看到LED一閃一閃。
沒有留言:
張貼留言