Go Down

Topic: If non ho capito come funziona!!!! (Read 4589 times) previous topic - next topic

Fax

Ciao sono un pò imbranato di inglese e non ho capito molto bene come faccio ad accendere e spegnere il led.....Cioè se io schiaccio H non succede nulla, la stessa cosa vale per la L.....Il codice è questo:

int Ventola=13;
int incomingByte;  

void setup()
{
 pinMode(Ventola, OUTPUT);
 Serial.begin(9600);
}

void loop()
{
 if (Serial.available() > 0) {
   incomingByte = Serial.read();
 if (incomingByte == 'H') {
 digitalWrite(Ventola, HIGH);
 }
   if (incomingByte == 'L') {
    digitalWrite(Ventola, LOW);
   }
 }
 

stefanosky

puoi cominciare con una formattazione del testo per vedere le "scatole"

Code: [Select]

if (Serial.available() > 0) {
  incomingByte = Serial.read();
     if (incomingByte == 'H') {
         digitalWrite(Ventola, HIGH);
     }
     if (incomingByte == 'L') {
         digitalWrite(Ventola, LOW);
     }
} // mancava l'ultima graffa


poi conta che per ogni graffa aperta, ce nè una da chiudere :)
contale, come fanno tutti oppure quando programmi e vuoi mettere un if > scrivi subito if(){} e poi lo riempi :)

Fax

Ok Grazie mille....Però il problema è che quando schiaccio H non si accende la ventola...... :(

stefanosky

che ventola? sei sicuro che gli basti 5 volts e un centinaio di milliampere?

stefanosky

nota in generale: per il forum sarebbe meglio che quando inserisci un post cerca di avere già delle idee chiare in testa, cioè progetta per conto tuo la cosa, e poi se non ci riesci specifica tutte le specifiche. ho visto che hai aperto altri post abbastanza generici, e non riceverai molte risposte (sensate) se le tue domande non sono dettagliate.
il tempo è importante per tutti :)
ciao

uwefed

@stefanosky
Un uscita di ARduino non puó dare
Quote
un centinaio di milliampere

Al massimo puó dare 40mA.

@Fax
Per poter controllare il codice é necessario anche sapere come é collegato l' elettronica collegata.
Il led L si accende?

Ciao Uwe

Fax

Sul sito di Arduino ce scritto che sei io schiaccio la lettera H dovrebbe accendersi la ventola.....Invece non si accende....e poi comunque la ventola gira se collegata direttamente ad arduino....

marchino65

Ciao,
prova prima a mettere un led al posto della ventola, così ci togliamo il dubbio dell'assorbimento, poi prova questo codice

int Led=13;
int incomingByte;  

void setup()
{
pinMode(Led, OUTPUT);
Serial.begin(115200);
}

void loop()
{
if (Serial.available() > 0) {
  incomingByte = Serial.read();
if (incomingByte == 'H') {
digitalWrite(Led, HIGH);
                            }
                          }  
  if (incomingByte == 'L') {
   digitalWrite(Led, LOW);
  }
}

P.S. devi scrivere H o L MAIUSCOLO  ;) e la seriale a 115200

Saluti

uwefed

ciao Fax
Fai quello che vuoi, ma una ventola assorbe troppo, prima o poi si rompe il ATmega.
Ciao Uwe

Fax

Niente non va non capisco perchè ....cioè dovrebbe accendersi quando scrivo l'H maiuscola ma non va..... :(

marchino65

Ciao,
io l'ho provato quando ti ho scritto e mi funziona perfettamente, controlla i collegamenti (positivo/negativo) e la configurazione della seriale.
Mi viene un dubbio, ma quando premi H lo dai Invio ?

P.S. provato con Arduino nano V.3

Saluti

Fax

Si che lo do l'invio ma tu l'H dove la scrivi.....e i collegamenti sono giusti....

marchino65

ciao,
la H la scrivo in alto a sinistra nella zona Input del terminale

Saluti

Fax

Ok funziona scusate ma io non sapevo di questo serial monitor.....Scusate la mia ignoranza....Comunque Grazie mille!!!!! ;D


Go Up