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