Étape 4: Code pour le rideau
Vous n’avez pas à changer quoi que ce soit dans le code pour l’Arduino (RullgardinV3.3English) mais si vous voulez être en mesure d’utiliser votre téléphone pour contrôler le Rideau et de définir des temporisateurs pour quand il doit lever le matin et rouler vers le bas dans la soirée. Puis vous devrez changer au moins deux choses dans le code pour le jury de NodeMCU (ESP8266_CurtainCompanion), j’ai marqué ces deux rangées et l’un d'entre eux est le jeton d’authentification pour votre projet dans l’application de Billy sur votre téléphone. L’autre est le nom et le mot de passe de votre connexion Wi-Fi.
Le code de ce projet est assez long, s’il vous plaît les télécharger si vous voulez jeter un coup d’oeil.
/ ** * Définir les entrées et sorties. * / void setup() {pinMode (Buzzer, sortie); pinMode (sortie 12,); digitalWrite(12,LOW) ; pinMode (sortie 13,); attachInterrupt (SIGNAL_IN, calcInput, changement), pinMode (relais 1, sortie); pinMode (sortie relais 2,); pinMode (sortie 7,); pinMode (entrée de la sonde,); pinMode (entrée, SmsUp); pinMode (entrée, SmsDown); pinMode (relay1Activate, entrée); pinMode (relay2Activate, entrée) ; Serial.Begin(9600) ; digitalWrite(relay1,HIGH) ; digitalWrite(relay2,HIGH) ; digitalWrite(relay1Activate,HIGH) ; digitalWrite(relay2Activate,HIGH) ; digitalWrite(7,HIGH) ; digitalWrite(SmsUp,HIGH) ; digitalWrite(SmsDown,HIGH) ;! = 0) {if(TimeIsMoney == 1) {delay(120000);} if(TimeIsMoney == 2) {delay(7200000);} if(TimeIsMoney == 3) {delay(10800000);}} / / Roll Down---if(UpOrDown == 1) {digitalWrite (relais 1, faible); / / commence le moteur delay(700) ; currentMillis = millis() ; previousMillis = currentMillis ; digitalWrite(13,HIGH) ; while(BreakIfNotOne == 1) {currentMillis = millis() ; if (currentMillis - previousMillis > intervalle) {BreakIfNotOne = 0;} if(digitalRead(sensor) == HIGH) {BreakIfNotOne = 0;}} digitalWrite(13,LOW) ; BreakIfNotOne = 1 ; UpOrDown = 2 ; digitalWrite (relais 1, haute) ; Delay(10) ; digitalWrite (relais 1, faible) ; Delay(100) ; digitalWrite (relais 1, haute) ;