Pin类 – I/O管脚控制¶
硬件定时器处理周期和事件的时间。在MCUs和SoCs中,定时器可能是最为灵活和异构的硬件,其根据模型不同而大有不同。MicroPython的定时器类使用一个给定周期(或经过某些延迟后)定义执行回调的基线操作,并允许特定板来定义更多非标准行为(因此无法移植到其他板上)。
请参阅关于计时器回调的 important constraints 的讨论。
备注
内存不能在IRQ处理器(一个中断)内部分配,所以处理器内部引发的异常无法提供更多信息。如何克服这一限制,请参见 micropython.alloc_emergency_exception_buf()
构造函数¶
- class machine.Timer(id, ...)¶
创建一个具有给定id的新定时器对象。Id为-1则构造一个虚拟定时器(如果支持的话)
方法¶
- Timer.init(*, mode=Timer.PERIODIC, period=-1, callback=None)¶
初始化定时器。示例:
tim.init(period=100) # periodic with 100ms period tim.init(mode=Timer.ONE_SHOT, period=1000) # one shot firing after 1000ms
关键字参数:
mode 可以是如下参数:
Timer.ONE_SHOT
- 定时器运行一次,直到通道的配置时间到期为止。Timer.PERIODIC
- 定时器按通道的配置频率周期性地运行。
- Timer.deinit()¶
反初始化定时器。停止定时器,并禁用定时器外设。