首頁 > 評測 > 用Python來做嵌入式開發(fā)——Adafruit PyBoard評測
用Python來做嵌入式開發(fā)——Adafruit PyBoard評測
- [導(dǎo)讀]
- Python被譽為膠水語言,在圖形處理,數(shù)學(xué)處理,Web編程,多媒體應(yīng)用等領(lǐng)域均發(fā)光發(fā)彩。而在嵌入式領(lǐng)域,MicroPython也自己的一席之地。
輸入help()命令后會顯示,PyBoard的基本操作命令,如下圖:
在PyBoard上安裝了4個LED分別為紅綠黃藍,原理圖如下圖:
在help中已經(jīng)介紹完了LED的控制方法,通過pyb.LED()控制
pyb.LED(n) n代表LED的編號,1代表紅色LED,2代表綠色LED,3代表黃色LED,4代表藍色LED。
pyb.LED(n).on()點亮LED
pyb.LED(n).off()關(guān)閉LED
pyb.LED(n).toggle()翻轉(zhuǎn)LED
pyb.LED(n).intensity([value])這里可以設(shè)置LED的亮度,value取值范圍是0-255,0為關(guān),255位最亮
接下來我們將4個led全部點亮,如下圖:
點亮后如下圖:
原理圖如下:
紅綠藍LED,亮度很高,相比之下黃色LED稍微弱一點,從原理圖來看,藍色LED的限流電阻偏小,猜測是為了將亮度調(diào)整的相近,但是結(jié)果是黃色的LED似乎略有些暗。
其實小編倒是有別的想法,現(xiàn)在使用RGB LED的越來越多了,其實RGB LED就相當(dāng)于三顆獨立的LED封裝到一起了,這樣封裝小,更適合這樣比較緊湊的板子。并且RGB LED還可以設(shè)計出更多的顏色,增加可玩性。
MicroPython腳本語言最大的優(yōu)點就是,輸入命令后馬上就可以看到效果,比我們最熟悉的Arduino更方便更高效,因為少了編譯,下載的步驟。因為Python本來就是解釋型語言,MicroPython的命令也比較簡單,容易理解,容易使用,可以說更容易上手。
接下來我們再試著讀取加速度傳感器的值,如下圖:
總體來講使用非常方便。
如果將MicroSD卡插入上電,PYBoard會默認(rèn)從SD卡啟動來替代原本從MCU的ROM中啟動。但是前提是需要將原來的的boot.py和main.py這兩個文件拷貝到MicroSD卡中否則不能運行。
如果我們想要讓板子上電后就執(zhí)行板子內(nèi)的程序這我們就需要在main.py這個文件中編寫我們想要的內(nèi)容,小編使用Notepad++編輯文件,如下圖:
import pyb 代表使用pyb模塊,這個模塊包含了控制開發(fā)板的所有函數(shù)和類,接下來4行是設(shè)置LED的不同的亮度,編輯完成后保存,在保存時紅色的LED是亮的,保存完成后熄滅,退出PYBoard,重新連接開發(fā)板,四個LED以不同的亮度亮起來,但是紅色和綠色的亮度值已經(jīng)很低了但是實際亮度依舊非常高,差點把小編的眼睛晃瞎,如下圖:
PyBoard有三種啟動模式
1.標(biāo)準(zhǔn)模式,只有綠色LED燈亮,先執(zhí)行boot.py文件,然后再執(zhí)行main.py文件。
2.安全模式,只有橙色LED燈亮,啟動時不執(zhí)行任何腳本程序。
3.恢復(fù)文件系統(tǒng),綠色和橙色LED燈同時亮,將Flash文件系統(tǒng)恢復(fù)為出廠數(shù)據(jù),然后以安全模式啟動。
假若你的文件系統(tǒng)被損壞,可以進入模式3修復(fù)它,詳細(xì)操作步驟在官網(wǎng)有詳細(xì)介紹。
錯誤指示
1.假如你看到紅色和綠色LED燈交替閃爍,表示Python腳本有錯誤(main.py),可以通過REPL進行調(diào)試修復(fù)。
2.假如4個LED燈以較慢的速度循環(huán)亮滅,這時出現(xiàn)了非常嚴(yán)重的錯誤(比如內(nèi)部出現(xiàn)跑飛了),這種情況下只能通過硬件復(fù)位來恢復(fù)了。
硬件恢復(fù)需要使用ST DFU Se為PYBoard下載固件。
七.其他資料
官方網(wǎng)站上提供了PyBoard的固件,原理圖,等文件。另外官網(wǎng)還提供了詳細(xì)的快速參考手冊,教程等文件,如下圖:
這些文件詳細(xì)的介紹了MicroPython和PyBoard,通過這些資料可以快速的入門,唯一不方便的是這些資料是英文的,好在國內(nèi)的一些論壇也有翻譯這些資料的,可以供參考。
八.總結(jié)及展望
Python本來就是非常容易入門的語言,同時也是應(yīng)用廣泛的語言,MicroPython將這用容易學(xué)習(xí)和使用的語言帶到了嵌入式開發(fā)中,可以直接操作硬件,并且不需要編譯和下載,可以快速的看到程序的結(jié)果,這是非常好的體驗。PyBoard精致小巧是一塊漂亮的開發(fā)板,可以方便的學(xué)習(xí)和開發(fā),另外MicroPython也支持更多的平臺,例如:STM32F4 Discovery Board,NUCLEO-F401RE Board,NUCLEO-F767ZI Board,ESP8266,WiPy等,以上的這些開發(fā)板都可以支持MicroPython,在開發(fā)板內(nèi)刷上固件就可以使用了。MicroPython帶來了全新的開發(fā)體驗,有興趣的同學(xué)可以試試。
九.官方資料
官網(wǎng):http://micropython.org/
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
-
人均百萬?英偉達中國員工收入曝光! 2024-08-29
-
《黑神話:悟空》玩家硬盤升級攻略:提升游戲體驗,暢享3A大作 2024-08-29
-
數(shù)睿數(shù)據(jù)參加《系統(tǒng)與軟件工程 低代碼開發(fā)平臺通用技術(shù)要求》國家標(biāo)準(zhǔn)編制 2024-08-29
- NRF52810藍牙數(shù)字耳機找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預(yù)算:¥1100000015小時前
- 12V汽車啟動電源項目BMS設(shè)計
預(yù)算:¥50000023小時前
- 數(shù)據(jù)可視化軟件 開發(fā)
預(yù)算:¥5000023小時前
- PLC項目調(diào)試修改
預(yù)算:¥100001天前
- 起動電機控制器開發(fā)
預(yù)算:¥1100001天前