Stap 2: arduino schets
Wat zal er gebeuren is als ik stuur dat een opdracht A tot H het Relais zal worden ingeschakeld en als ik stuur een tot en met h de estafette zal worden uitgeschakeld.
Ik heb het geprogrammeerd zodat
Een estafette een is op (vergrendeld)
B relay twee brandt (vergrendeld)
C brandt relay een gedurende 1 seconde
D brandt relay twee gedurende 1 seconde
E is relay een op voor 5 seconden
F brandt relay twee gedurende 5 seconden
G relay een brandt gedurende 1 seconde en vervolgens Relais twee op dan zowel uit
H zal relay een aan en uit schakelaar voor 1000 keer
de Relais schakelen wanneer de digitale pin is geaard. en het Relais schakelt automatisch uit wanneer het digitale pin hoog gaat
Hier is de code
/*
eenvoudige LED-test
*/
char val; variabele gegevens kunnen ontvangen van de seriële poort
int ledpin = 2; LED aangesloten op pin 2 (on-board LED)
VOID Setup
{
pinMode (ledpin = 2, OUTPUT); pin 2 (on-board LED) als OUTPUT
pinMode (ledpin = 3, OUTPUT); pin 3 (on-board LED) als OUTPUT
Serial.begin(9600); Start seriële communicatie 115200 bps
}
void loop
{
Als (Serial.available()) / / indien gegevens beschikbaar om te lezen
{
;
}
Val = Serial.read(); Lees het en sla het in de 'val'
Als (val == 'a') / / als 'a' werd ontvangen led 2 is uitgeschakeld
{
digitalWrite (ledpin = 2, hoog); uitschakelen van de pin 2
}
Als (val == 'A') / / als 'A' werd ontvangen led 2 op
{
digitalWrite (ledpin = 2, laag); pin 2 inschakelen
}
Als (val == 'b') / / als 'b' ontving led 3 is uitgeschakeld
{
digitalWrite (ledpin = 3, hoog); pin 3 uitschakelen
}
Als (val == 'B') / / als 'B' ontving 3 led op
{
digitalWrite (ledpin = 3, laag); pin 3 inschakelen
} //else (ledpin = 3, laag) //set leidde pin 3 te laag staat
Als (val == 'C') / / als de 'C' werd ontvangen led 2 op 1 seconde
{
digitalWrite (ledpin = 2, laag); pin 2 inschakelen
delay(1000); wacht 1 seconde
digitalWrite (ledpin, hoge); uitschakelen van de pin 2
}
Als (val == had') / / als had' was ontvangen led 3 op 1 seconde
{
digitalWrite (ledpin = 3, laag); pin 3 inschakelen
delay(1000); wacht 1 seconde
digitalWrite (ledpin, hoge); pin 3 uitschakelen
}
Als (val == 'E') / / als 'E' werd ontvangen led 2 op gedurende 5 seconden
{
digitalWrite (ledpin = 2, laag); pin 2 inschakelen
delay(5000); 500 milli-seconden wachten
digitalWrite (ledpin, hoge); uitschakelen van de pin 2
}
Als (val == 'F') / / als de 'F' ontving led 3 op gedurende 5 seconden
{
digitalWrite (ledpin = 3, laag); pin 3 inschakelen
delay(5000); 500 milli-seconden wachten
digitalWrite (ledpin, hoge); pin 3 uitschakelen
}
Als (val == 'G') / / als 'G' ontvangen beurt leidde pin 2 was op voor 500ms uitschakelen en inschakelen van pin 3 500 mili-seconden vervolgens uitschakelen
{
digitalWrite (ledpin = 2, laag); pin 2 inschakelen
delay(500); 500mili tweede wachten
digitalWrite (ledpin, hoge); uitschakelen van de pin 2
digitalWrite (ledpin = 3, laag); pin 2 inschakelen
delay(500); Ten tweede wachten van 500 mili
digitalWrite (ledpin, hoge); uitschakelen van de pin 2
}
Als (val == 'h') / / als de 'h' werd ontvangen alle pinnen uitschakelen
{
digitalWrite (ledpin = 13, laag); uitschakelen van de pin 13
digitalWrite (ledpin = 2, hoog); uitschakelen van de pin 2
digitalWrite (ledpin = 3, hoog); pin 3 uitschakelen
}
Als (val == 'H') / / als de 'H' werd ontvangen pin 2 in- en uitschakelen 1000 keer schakelen
for (int i = 0; ik < 1000; i ++)
{
digitalWrite (ledpin = 2, hoog); pin 2 inschakelen
vertraging (1000); 1000 mili-seconden wachten
digitalWrite (ledpin = 2, laag); uitschakelen van de pin 2
vertraging (1000); 1000 mili-seconden wachten
}
}