2016-11-03 3 views
0

나는 nodemcu를 얻었고 다음을 성취하려고 노력했다. - 5 분마다 원격 웹 사이트로 데이터를 보냅니다. 내가 처음 TMR을 주석 경우, 함수 같이 sendData 초마다 5 분을여러 타이머 실행 중입니까?

function checkSensors() 
     print("checking sensors") 
     -- do some stuff here 
    end 

    function sendData() 
     print("Sending Data") 
     -- do some stuff here 
    end 

    tmr.alarm(0, 1000, 1, function() checkSensors() end) 
    tmr.alarm(0, 300000, 1, function() sendData() end) 

라고 : - 1 개 초마다 체크 센서

그래서이 개 기능을 가지고 있습니다. 마찬가지로 첫 번째 tmr을 주석 처리하면 sendData 함수가 매 초마다 호출됩니다.

그러나 둘 다 사용하여 sendData가 호출됩니다.

어떻게 타이머를 둘 다 사용할 수 있습니까? 아니면 다른 방법으로이 작업을 수행해야합니까?

답변

2

tmr.alarm의 첫 번째 매개 변수는 타이머의 ID입니다. 두 호출 모두에 0을 사용하기 때문에 하나의 타이머를 두 번 재구성합니다. 여러 개의 타이머가 필요한 경우 각 타이머마다 다른 ID를 전달해야합니다.

정적 타이머 (0 - 6)는 7 개가 있지만 멀리 떨어져 있습니다. tmr.create으로 동적 타이머를 만들 수 있습니다. 반환 된 ID는 tmr.alarm으로 전달 될 수 있습니다.

+0

아 ... 맞아요! 감사. 연령대에 고심하고있다 :) – Greg