2017-07-02 4 views
0

Voilà comment je l'ai fait dans arduinoComment utiliser timer.set dans mongoose Je veux l'utiliser comme delay (1000);

analogWrite(pin1,1023); 
digitalWrite(pin2,HIGH); 

delay(1500); 

analogWrite(pin1,0); 
digitalWrite(pin2,LOW); 

Comment puis-je écrire le même code dans js pour os mangouste?

Je veux pin1 qui est sortie numérique faible pour 1000 ms puis élevée jusqu'à ce que le state.on change

J'ai essayé d'utiliser timer.set dans mangouste os PIN2 est analogique

function valveOC() { 

    if (state.on === false) { 

     Timer.set(1000, false, function() { 

      GPIO.write(pin1, 0); 

      PWM.set(pin2, 50, 100); 

      print(value ? 'Tick' : 'Tock'); 
     }, null); 

    } 

    if (state.on === false) { 
     Timer.set(1000, false, function() { 

      GPIO.write(pin1, 1); 
      PWM.set(pin2, 50, 100); 

     }, null); 

    } 
} 

Répondre

1

D'abord, vous devez connaître la fonction de minuterie dans Mongoose OS:

Timer.set (millisecondes, répétition, gestionnaire)

Setup t imer avec un délai d'attente de millisecondes et un gestionnaire comme rappel. Si repeat est défini sur true, l'appel sera répété indéfiniment, sinon c'est un one-off. Valeur de retour: ID de temporisateur numérique.

équivalent de retard (1000) dans Mongoose OS est: Sys.usleep (microsecondes)

et votre code deviendra:

if (state.on === false) { 
     Sys.usleep(1000000); 
     GPIO.write(pin1, 0); 
     PWM.set(pin2, 50, 100): 
} 

if (state.on === false) { 
     Sys.usleep(1000000); 
     GPIO.write(pin1, 1); 
     PWM.set(pin2, 50, 100); 
} 

Vous pouvez voir plus de détails dans JS api documentation

+0

sera essayez et revenez merci beaucoup –