Lätt Bluetooth aktiverat dörr lås med Arduino + Android (6 / 7 steg)
Steg 6: Koden
Kodningen är ett lite knepigt som jag sade i introt, men jag är lite av en nybörjare med Arduino så det inte borde vara svårt för alla att förstå. I princip kommer Arduino att kontrollera om något tas emot genom följetong. Om det är, det läses dessa tecken i en matris och från den punkten kontrollera att vad mottogs matchar lösenordet vi definierat. I mitt exempel är lösenordet definieras ABCD.int lock = 9; //PIN 9 på Arduino
char final [4]. //Characters Arduino får
röding rätta [4] = {"en","B',"C"skulle"}; //User-Defined lösenord
int pass_correct = 0; //Does lösenord match, 0 = falsk 1 = true
void setup() void loop() för (int jag = 0; jag < 4; i ++) IF(pass_correct==1) / * FÖR ATT TESTA }
{
pinMode (lås, OUTPUT);
Serial.BEGIN(9600);
digitalWrite (lock, hög); Är //By standard Lås active(locked)
}
{
While(Serial.available())
{
för (int jag = 0; jag < 4; i ++)
{
Final [i] = Serial.read(); //Read 4 byte i matris som heter "final"
}
{
IF(Final[i]==correct[i])
{
pass_correct = 1; //If jämför vi två tecken och de matchar, anger du variabeln pass_correct till true(1)
}
annat
{
pass_correct = 0; //if de två jämförda tecken inte matchar, ange pass_correct variabel till false(0)
Break; //End loop och sluta jämföra tecken
}
}
}
{
Serial.println("Unlocked");
digitalWrite (lås, låg);
Delay(5000);
Serial.println("Locked");
pass_correct = 0;
}
annat
{
digitalWrite (lock, hög), //Else om det fanns inte en komplett match, hålla lås 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);