首頁 > 評測 > ATSAMD51的特快專遞--Adafruit Metro M4開發(fā)板評測
ATSAMD51的特快專遞--Adafruit Metro M4開發(fā)板評測
- [導(dǎo)讀]
- 準(zhǔn)備好了么,來自ATSAMD51的特快專遞已準(zhǔn)備就緒,就等你來!
最后還要提一下庫文件的問題。Python之所以強(qiáng)大,是因?yàn)橛写罅咳降膸旃┪覀冋{(diào)用,Adafruit也為Circuit提供了大量的庫支持,在使用一些外設(shè)時,不需要自己去再造一個輪子,直接引用這些庫就可以完成任務(wù),這當(dāng)然是一件妙事!
從官方下載庫文件解壓后會得到一個lib文件夾,將該文件夾復(fù)制到CURCUITPY所在的磁盤根目錄下,就可以使用這些三方庫來增強(qiáng)程序功能。
現(xiàn)在開始,可以愉快的使用Metro M4 Express來體驗(yàn)CIRCUITPYTHON了。
點(diǎn)燈我們就不點(diǎn)了,但是看下代碼,熟悉下編程風(fēng)格還是有必要的,如下
import board
import digitalio
import time
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT
while True:
led.value = 0
time.sleep(.5)
led.value = 1
time.sleep(.5)
如果不熟悉這些函數(shù),可以按照Arduino代碼的風(fēng)格來猜,基本上是一致的。
要熟悉相關(guān)的代碼及庫,可以借助Python自身的幫助功能,舉例如下,假設(shè)我不知道board模塊里有哪些功能,在Serial窗口里執(zhí)行如下的代碼
>>> import board
>>> dir(board)
['A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'D0', 'RX', 'D1', 'TX', 'D2', 'D3', 'D4', 'D5', 'D6', 'D7', 'D8', 'D9', 'D10', 'D11', 'D12', 'D13', 'SDA', 'SCL', 'NEOPIXEL', 'SCK', 'MOSI', 'MISO', 'LED_RX', 'LED_TX', 'I2C', 'SPI', 'UART']
>>>
其中>>>正是Python交互的提示符,我們可以看到board模塊基本只提供了一些開發(fā)板的接口定義,我們在上述源代碼中使用的board.D13就是開發(fā)板的13號pin。
在lib目錄下有個simpleio.mpy,這是一個簡單IO封裝庫,如果想獲取其幫助,參考如下代碼
>>> import simpleio
>>> dir(simpleio)
['tone', 'DigitalOut', 'time', 'shift_out', 'bitWrite', 'array', '__name__', 'DigitalIn', 'digitalio', 'shift_in', 'map_range', 'pulseio', 'audioio', 'Servo']
>>>
另外也可以使用help()來獲取更詳細(xì)的幫助,如下
>>> help(simpleio)
object
tone --
DigitalOut --
time --
shift_out --
bitWrite --
array --
__name__ -- simpleio
DigitalIn --
digitalio --
shift_in --
map_range --
pulseio --
audioio --
Servo --
>>>
這樣看是不是更清晰了!
差不多了,該寫個完整的腳本來體驗(yàn)Python的便利了。這次使用的是DHT11溫濕度傳感器,在一些精度要求不同的場合,DHT11還是很不錯的,如果對精度要求高,可以使用DHT22,這些設(shè)備都有一個優(yōu)勢,只使用一根信號線,連接非常簡單。將DHT11的信號線連接至D2,然后開始寫程序,代碼如下
import board
import adafruit_dht as dht
import time
dht11 = dht.DHT11(board.D2)
while True:
temp, humi = dht11.temperature, dht11.humidity
print('temperature: {}\nhumidity: {}%'.format(temp, humi))
time.sleep(5)
保存為code.py,讓它自動運(yùn)行,在Mu中打開串口,得到如下的結(jié)果
從未如此簡單,是不是?
只可惜Metro M4 Express開發(fā)板沒有網(wǎng)絡(luò)連接能力,否則就可以將檢測到的數(shù)據(jù)發(fā)布到Internet上了!
總結(jié)來說,Metro M4 Express開發(fā)板還是值得一試的。以前總有人擔(dān)心,在MCU上使用Python,性能是否會有瓶頸,但是在120MHz的頻率之下,簡單的應(yīng)用場合下,使用起來還是很流暢的!
在AI呼聲越來越高的今天,了解一點(diǎn)Python,學(xué)一點(diǎn)Python,未嘗不是一種好的選擇,也許一覺醒來,AI已普及到了MCU上,誰能說得好呢?
-
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
-
人均百萬?英偉達(dá)中國員工收入曝光! 2024-08-29
-
《黑神話:悟空》玩家硬盤升級攻略:提升游戲體驗(yàn),暢享3A大作 2024-08-29
-
數(shù)睿數(shù)據(jù)參加《系統(tǒng)與軟件工程 低代碼開發(fā)平臺通用技術(shù)要求》國家標(biāo)準(zhǔn)編制 2024-08-29
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預(yù)算:¥1100000015小時前
- 12V汽車啟動電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時前
- 數(shù)據(jù)可視化軟件 開發(fā)
預(yù)算:¥5000023小時前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動電機(jī)控制器開發(fā)
預(yù)算:¥1100001天前