je vous explique mon projet : j'aimerai créer une bande led (10 en l'occurence) qui jouerait une fonction en boucle jusqu'a recevoir un ordre différent via un module hc05 (bluetooth).
Exemple:
j'envoi 's', sa me fait clignoter mes led et dès que j'en ai envie j'envoi 'a' et la fonction change et alterne mainteant mes led pair et impairs. et dès que j'envoi 'q' je sort de mes while et ma loop attend de recevoir un nouveau signal bluetooth.
Voila mon code actuellement, je bloque dessus depuis 3jour et je voit pas comment je peut faire :
const int LedPin[] = {2,3,4,5,6,7,8,9,10};
String inputString="";
int state = 0;
void setup(){
Serial.begin(9600);
for(int i = 0;i< sizeof(LedPin);i++){
pinMode(LedPin[i], OUTPUT);
}
}
void loop(){
char val;
if (Serial.available() > 0) {
val = tolower(Serial.read()); // in case the enter upper case
switch (val) {
case 's':
Ledsnake();
Serial.println("ledon");
break;
case 'a':
LedAltern();
break;
case 'q':
break;
}
}
}
void Ledsnake(){
for(int i=0;i< sizeof(LedPin);i++){
digitalWrite(LedPin[i],HIGH);
delay(500);
}
for(int i=0;i< sizeof(LedPin);i++){
digitalWrite(LedPin[i],LOW);
delay(500);
}
}
void LedAltern(){
bool pair = false;
if(pair)
{
for(int j = 0; j<sizeof(LedPin);j+=2)
{
digitalWrite(LedPin[j], HIGH);
}
delay(500);
for(int j = 0; j<sizeof(LedPin);j+=2)
{
digitalWrite(LedPin[j], LOW);
}
delay(500);
pair = false;
}
else
{
for(int j = 1; j<sizeof(LedPin);j+=2)
{
digitalWrite(LedPin[j], HIGH);
}
delay(500);
for(int j = 1; j<sizeof(LedPin);j+=2)
{
digitalWrite(LedPin[j], LOW);
}
delay(500);
pair = true;
}
}
En espérant que vous pourrez m'aidez. a plus et bonne soirée amis zéros !
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Bonhomme !! | Jeu de plateforme : Prototype.