跳转至

定时器


概述

演示定时器的基本用法,用到了指示灯的控制


代码


//显示当前时间
var d = Box.getTime();
print("now is", d.format("%Y-%0M-%D %0h:%0m:%0s"));

var a = 1;
Timer.start(1, 1000);   //定时一秒
Timer.start(2, 3000);   //定时三秒
Timer.start(3, 30, 0);  //定时到最近的一次30分0秒
while(true)
{
    var m = Event.get();
    switch(m.msg)
    {
        case Event.TIMER_OUT:
            switch(m.id)
            {
                case 1:
                    if((a & 1) == 1)
                        GPIO.set(GPIO.DATA, 1);
                    else
                        GPIO.set(GPIO.DATA, 0);
                    a++;
                    Timer.start(1, 1000);
                    break;
                case 2:
                    GPIO.set(GPIO.POWER, 1 - GPIO.get(GPIO.POWER))
                    Timer.start(2, 3000);
                    break;
                case 3:
                    var d = Box.getTime();
                    print("now is", d.format("%0h:%0m:%0s"));
                    Timer.start(3, 0, 0);   //定时到下一次整点
                    break;
            }
            break;
    }
}

下载代码(右键另存为):timer.js