Ragazzi ho dei led che accendo e spegne via web ora dovrei poterli spegnere §e questi sono accesi potete aiutarmi ?
no, non posso aiutarti. Dai troppo poche informazioni.
Ciao Uwe
Ma se via Web, già li accendi e spegni..... perche' hai problemi a spegnerli ?
Perché devo poterli spegnere con un colpo solo
Credo che basta che crei una funzione dove dici tramite digitalWrite di mettere i pin che ti interessano in LOW.
Pone la stessa domanda da settimane, ma è impossibile capire cosa vuole fare, e cosa sta facendo dopo che glielo hai spiegato, le sue descrizioni sono ... non povere, di più, gli dici una cosa e ne fa un altra, gli fai una domanda e ti risponde con un altra domanda, poi sparisce e non ti risponde se è riuscito o no e cambia argomento, poi ti trovi un altro topic con la stessa domanda ..... FrankyLeft ci fai diventare pazzi!!!
Sei le luci sono accese quando premo il bottone spegni tutte le luci mi deve spegnere solo quelle accese
Comunque tutti o consigli che mi avete dato mi hanno portato alla fine del progetto mi manca questa cosa solo
E allora s prosegue nel thread dove ci sono tutte le altre informazioni e si capisce dove sei arrivato.
Così salti da palo in frasca e ogni volta ti devono richiedere tutte le info !!
Mi sorge spontanea una domanda, è a scopo teorico o semplicemente al posto dei led hai collegato dei relé passo passo, altrimenti non si spiega la necessità di spegnere solo i led accesi, basterebbe mettere a LOW tutte le uscite collegate ai led, qualli accesi si spengono e quelli spenti restano spenti
Ci pare di aver intuito che stà giocando con dei relè, ma non può dirlo.
Comunque i pin anche se sono in scrittura puoi comunque leggerli per sapere se son low o high.
Basta che fai
if( digitalRead(miopin)==HIGH) digitalWrite(miopin,LOW);
Oppure ti fai delle variabili che memorizzano lo stato del pin (ovviamente te le devi gestire).
Ok e dato che sono piu pin questo
if( digitalRead(miopin)==HIGH) digitalWrite(miopin,LOW);
Chiudo ogni singolo if e riapro un if ?
Si.
Oppure ti fai un array/vettore di pin
byte myPin[]={5,6,9,10}; // uso i pin 5,6,9,10 con indice del vettore 0,1,2,3 myPin[1] è pin 6
...
for(int i=0;i<(sizeof(myPin)/sizeof(byte));i++)
{ if( digitalRead(myPin[i]==HIGH) digitalWrite(myPin[i],LOW);
}
Grazie mille appena posso ci provo
Provato va bene grazie nid69