Timer計時器函式實作-ESP8266
tags: ‘esp8266’ ‘timer’
micropython本身提供Timer的程式庫設定處理器內部的計時器
函式用法
Timer(編號)—esp32編號可以是0~3,(esp8266編號是-1)
init(週期, 模式, 回呼)—計時器啓動執行
- preiod(週期)–間隔時間以ms(毫秒)
- mode(模式)–Timer.PERIODIC(週期定時執行)/Timer.ONE_SHOT(只執行一次)
- callback()–事件發生被執行的函式
deinit()—解除計時器
範例
from machine import Pin, Timer
led = Pin(13, Pin.OUT)
tim = Timer(-1)
tim.init(period=500, mode=Timer.PERIODIC, callback=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())