haas506开发教程-driver-TIMER

  • 1.定时器
  • 2.Class-TIMER
  • 3.总结


1.定时器

from driver import TIMER

#在回调函数中修改定时时间
def cb6(args):
    global count
    tim0.period(5000)
    print("count=",count)
    count+=1

#只打印一次,就关闭计时器
def cb5(args):
    global count
    print("count:",count)
    count+=1
    tim0.close()

# 每隔一秒计数,计数到6之后停止,然后又开始
def cb4(args):
    global count
    if count>5:
        tim0.stop()
        tim0.start()
    print('count:',count)
    count+=1

# 每隔一秒计数,计数到6之后停止,然后又开始
def cb3(args):
    global count
    if count>5:
        tim0.stop()
        tim0.reload()
    print('count:',count)
    count+=1

# 每隔一秒计数,计数到6停止
def cb2(args):
    global count
    if count>5:
        tim0.stop()
    print('count:',count)
    count+=1

# 每隔一秒计数
def cb1(args):
    global count
    print("count:",count)
    count+=1

if __name__=='__main__':
    global count
    count=0
    tim0=TIMER(0)
    tim0.open(period=1000, mode=TIMER.PERIODIC, callback=cb1)
    #tim0.open(period=5000, mode=tim0.PERIODIC, callback=cb1)
    #tim0.open(period=1000, mode=TIMER.ONE_SHOT, callback=cb1)
    #tim0.open(period=1000, mode=tim0.PERIODIC, callback=cb6)

2.Class-TIMER


TIMER open close start stop reload period PERIODI ONE_SHOT


  • TIMER
  • 实例化
  • tim0=TIMER(0)
  • tim0.open(period,mode,callback)
  • 作用:打开定时器,在打开的时候会自动启动定时器
  • 参数:period表示定时周期;mode表示定时模式,分为PERIODIC和ONE_SHOT两种,PERIODIC表示周期性,ONE_SHOT表示单次;callback表示回调函数,可以在回调函数在执行用户自定义的代码。
  • 返回:0成功
  • tim0.close()
  • 作用:关闭定时器
  • 返回:0成功
  • tim0.start()
  • 作用:启动定时器
  • 返回:0成功
  • tim0.stop()
  • 作用:暂停定时器
  • 返回:0成功
  • tim0.reload()
  • 作用:同start()一样
  • 返回:0成功
  • tim0.period(ms)
  • 作用:设置定时间隔,可在open之后在回调函数中修改定时间隔
  • 参数:定时的ms数
  • 返回:0成功
  • tim0.PERIODIC
  • 作用:周期定时
  • tim0.PERIODIC
  • 作用:单次定时

3.总结

  本节介绍了haas506的driver库中的TIMER(定时器)模块。用户可以自定义定时周期、定时方式以及回调函数中执行的程序等。