SwTimer – 软件定时器

软件定时器处理周期和事件的时间。基于OS系统的TICK功能实现。


使用示例

1
2
3
4
5
6
7
8
9
from machine import SoftTimer
tim0 = SoftTimer(0)

def cb(args):
    print('timer_test_log1111')

tim0.init(period=1000, mode=SoftTimer.PERIODIC, callback=cb)
tim0.stop()
tim0.deinit()

函数接口


machine_sw_timer.SoftTimer(id)[源代码]

创建一个具有给定id的新软件定时器对象。

参数

id – 定时器索引号,不受硬件系统限制。

返回

SoftTimer 类句柄

引发

ValueError – EINVAL

machine_sw_timer.init(mode, period, callback=None)[源代码]

初始化定时器。示例:

tim.init(period=100)                         # 周期为100ms
tim.init(mode=SoftTimer.ONE_SHOT, period=1000)   # 1000毫秒后触发
参数
  • mode

    定时器工作模式,可以是其中之一:

    • SoftTimer.ONE_SHOT - 定时器运行一次,直到通道的配置时间到期为止。

    • SoftTimer.PERIODIC - 定时器按通道的配置频率周期性地运行。

  • period – 定时周期,单位是毫秒(ms)

  • callback – 定时器时间到了之后的回调函数

返回

None

machine_sw_timer.deinit()[源代码]

反初始化定时器。停止定时器,并禁用定时器外设。

参数

返回

None

machine_sw_timer.start()[源代码]

启动定时器

Param

None

返回

None

machine_sw_timer.stop()[源代码]

暂停定时器

Param

None

返回

None

machine_sw_timer.period(value)[源代码]

修改定制器周期

参数

value – 新定时周期参数,单位是ms

返回

None

machine_sw_timer.value()[源代码]

获取定制器当前时间参数。HaaS设备暂不支持该接口。

Param

返回

None