首先介紹下MicroPython,其為Python3語言的精簡(jiǎn)實(shí)現(xiàn),語法上和python一致并且包含一小部分常用的python庫(kù),經(jīng)過優(yōu)化可在微控制器和受限環(huán)境中運(yùn)行,可用于嵌入式開發(fā)。
制作紅綠燈首先需要三個(gè)led燈,分別為三種顏色,然后如果有正負(fù)極就正極連在開發(fā)板的GPIO口上,另一邊連接底線,如果沒有,就隨便連哪一根都可以,接好之后就是我們的代碼實(shí)現(xiàn)部分:
import machine as m
首先要引入machine模塊,這個(gè)類可以控制gpio口的開合以及輸入輸出
impoty time as t
然后引入time模塊,主要用在led燈開合的延時(shí),實(shí)現(xiàn)燈光閃爍
r = m.Pin(16,m.Pin.OUT)
g = m.Pin(2,m.Pin.OUT)
y = m.Pin(4,m.Pin.OUT)
然后實(shí)例化你led燈鏈接的GPIO口(Pin.OUT為輸出模式),一般在針腳附近都會(huì)寫,現(xiàn)在用的是(16,2,4)
def rs():
r.value(0)
t.sleep(1)
r.value(1)
t.sleep(1)
def gs():
g.value(0)
t.sleep(1)
g.value(1)
t.sleep(1)
def ys():
y.value(0)
t.sleep(1)
y.value(1)
t.sleep(1)
然后定義三個(gè)方法,讓等閃爍一秒,.value(0)是發(fā)送一個(gè)低平電壓,在沒有繼電器的情況下燈的狀況是不亮的,反之.value(1)是發(fā)送一個(gè)高平電壓,燈的狀態(tài)是亮起,.sleep(1)意為一秒鐘間隔
def star():
#print(1)
r.value(1)
t.sleep(3)
rs()
rs()
r.value(0)
y.value(1)
t.sleep(3)
ys()
ys()
y.value(0)
g.value(1)
t.sleep(3)
gs()
gs()
g.value(0)
star()
然后定義一個(gè)啟動(dòng)方法,運(yùn)行時(shí)只要調(diào)用一次star()方法程序便會(huì)一直執(zhí)行下去