Étape 6: Le Code
Le codage est un peu compliqué, comme je l’ai dit dans l’intro, mais je suis un peu débutant avec l’Arduino, donc il ne devrait pas être difficile pour quiconque de comprendre. Fondamentalement, l’Arduino va vérifier pour voir si quelque chose est capté par le biais de série. Si c’est le cas, il va lire ces caractères dans un tableau et à partir de là, vérifiez que ce qui a été reçu correspond le mot de passe que nous avons défini. Dans mon exemple, le mot de passe défini est ABCD.verrou int = 9 ; //pin 9 sur Arduino
char final [4] ; //Characters l’Arduino recevra
char corriger [4] = {"un","B', « C », serait"} ; //User-Defined mot de passe
int pass_correct = 0 ; //Does mot de passe correspondent, 0 = faux 1 = true
void setup() void loop() pour (int i = 0; i < 4; i ++) if(pass_correct==1) / * POUR LE TEST }
{
pinMode (verrouiller, sortie) ;
Serial.Begin(9600) ;
digitalWrite (écluse, HIGH) ; //By défaut, serrure est active(locked)
}
{
while(Serial.available())
{
pour (int i = 0; j’ai < 4; i ++)
{
finale [i] = Serial.read() ; //Read 4 octets dans la tableau étiqueté "finale"
}
{
if(final[i]==correct[i])
{
pass_correct = 1 ; //If nous comparons deux chars et ils correspondent, affectez à la variable pass_correct true(1)
}
d’autre
{
pass_correct = 0 ; //if comparés deux signes ne correspondent pas, affectez à pass_correct variable false(0)
Pause ; //End boucle et arrêter de comparer les caractères
}
}
}
{
Serial.println("Unlocked") ;
digitalWrite (écluse, faible) ;
Delay(5000) ;
Serial.println("LOCKED") ;
pass_correct = 0 ;
}
d’autre
{
digitalWrite (écluse, HIGH); //Else si il n’y n'avait pas un complet correspondant, garder la serrure high(locked)
}
Serial.Print(final[0]) ; Serial.Print(final[1]) ; Serial.Print(final[2]) ; Serial.Print(final[3]) ;
Serial.Print("|") ;
Serial.Print(correct[0]) ; Serial.Print(correct[1]) ; Serial.Print(correct[2]) ; Serial.Print(correct[3]) ;
Serial.Print("") ;
Serial.Print(pass_correct) ;
Serial.println("") ;
*/
Delay(500) ;