Étape 8: Code
Lorsque le circuit est terminé, il est temps de télécharger le code, le code est assez simple et vous pouvez entrer des valeurs analogiques différentes pour obtenir des couleurs différentes.
Par exemple.
- Vert + rouge = jaune
- Rouge + bleu = rose
Code
temp de flotteur ;
int tempPin = 0 ;
int vert = 2 ; Jeux de la led verte sur broche 2
bleu int = 3 ; ensembles, le led bleu sur la broche 3
int rouge = 4 ; définit le led rouge de pin4 arduino
int incomingByte = 0 ; pour les données entrantes de série
void setup()
{
pinMode (rouge, sortie) ; Réglez de façon strictement conduit à être sorties
pinMode (blue, sortie) ;
pinMode (verte, sortie) ; Réglez de façon strictement conduit à être sorties
digitalWrite (bleu, faible) ; led SET basse pour démarrage
digitalWrite (vert, faible) ; led SET basse pour démarrage
digitalWrite (rouge, faible) ; led SET basse pour démarrage
Serial.Begin(9600) ;
Serial.Print ("Im tous, orientée vers le haut!!! \n");
Serial.Print ("lampe LF") ;
}
void loop()
{
Si (Serial.available() > 0) {}
lire les octets entrants :
incomingByte = Serial.read() ;
}
Switch(incomingByte)
{
case « r »: / / si affaire r est recived
digitalWrite (rouge, haute) ; Tourner sur la led
digitalWrite (vert, faible) ; Éteindre la led
digitalWrite (bleu, LOW); / / éteindre la led
incomingByte ='* ' ;
rupture ;
affaire « b »: / / si le cas b est reçu
digitalWrite (bleu, HIGH) ;
digitalWrite (rouge, faible) ;
digitalWrite (vert, faible) ; Led bleue est en marche
incomingByte ='* ' ;
rupture ;
case « g » :
digitalWrite (bleu, faible) ;
digitalWrite (rouge, faible) ;
digitalWrite (vert, HIGH) ; voyant vert est allumé
incomingByte ='* ' ;
rupture ;
affaire « y » :
digitalWrite (bleu, faible) ;
digitalWrite (rouge, haute) ;
digitalWrite (vert, HIGH) ; Vert et le voyant rouge est allumé
incomingByte ='* ' ;
rupture ;
case « l » :
digitalWrite (bleu, HIGH) ;
digitalWrite (rouge, faible) ;
digitalWrite (vert, HIGH) ;
incomingByte ='* ' ; Bleu et le voyant vert est allumé
rupture ;
case « p » :
digitalWrite (bleu, HIGH) ;
digitalWrite (rouge, haute) ;
digitalWrite (vert, faible) ;
incomingByte ='* ' ; Bleu et le voyant rouge est allumé
rupture ;
case « w » :
digitalWrite (bleu, HIGH) ;
digitalWrite (rouge, haute) ;
digitalWrite (vert, HIGH) ;
incomingByte ='* ' ; Tous les voyants sont allumés
rupture ;
affaire ' t » :
Temp = analogRead (tempPin); //Reads goupille de température analogique
Temp = temp * 0.48228125 ;
Serial.Print ("température =") ;
Serial.Print(temp) ;
Serial.Print ("* C"); //Sends la température en degré Celsius
Serial.println() ;
Delay(1000) ;
rupture ;
Delay(5000) ;
}
}