Timer計時器函式實作-ESP8266

 Timer計時器函式實作-ESP8266

micropython本身提供Timer的程式庫設定處理器內部的計時器

函式用法

Timer(編號)---esp32編號可以是0~3,(esp8266編號是-1)
init(週期, 模式, 回呼)---計時器啓動執行
  • preiod(週期)--間隔時間以ms(毫秒)
  • mode(模式)--Timer.PERIODIC(週期定時執行)/Timer.ONE_SHOT(只執行一次)
  • callback()--事件發生被執行的函式
deinit()---解除計時器

範例

from machine import PinTimer

led = Pin(13Pin.OUT)

tim = Timer(-1)
tim.init(period=500mode=Timer.PERIODICcallback=lambda t:led.value(not led.value()))
try:
    while True:
        pass
except KeyboardInterrupt:
    tim.deinit()
    print('stopped')

lambda t:led.value(not led.value())
這段其實是用匿名函式寫成,原本的具名函式如下:
def timer(t):
    led.value(not led.value())







留言

這個網誌中的熱門文章

Sonoff RF R2燒錄

ESP-01S燒錄固件