Salve a tutti, come da titolo vorrei sapere come è possibile controllare il valore di una variabile.
Mi spiego meglio: Ho un monitor lcd collegato ad arduino e quello che vorrei fare è scrivere su quest'ultimo utilizzando la porta seriale.
Il mio ragionamento era: Se nella variabile "a" c'è qualcosa (ossia non è vuota) allora arduino legge questo valore e lo scrive sul display.
Il problema sta nel fatto che non riesco a scrivere questo pezzo di codice, ho provato in molti modi ma proprio non fa quello che vorrei facesse!
Qui sotto vi metto il codice che avevo iniziato a scrivere, il "blocco" sta nell'ultima parte. #include <LiquidCrystal.h>
char val = 0;
int a = 0;
//libreria e variabili
Ciao,
prima di tutto cortesemente correggi il tuo post ed al posto del TAG quote, per il codice, usa il TAG code ... se vai in edit, il bottone # (terzultimo, seconda fila) ti genera detti TAG.
Poi ...
... all'interno della funzione loop() (... che ti ricordo si ripete all'infinito), dovrai prima di tutto verificare se UN carattere è disponibile sulla seriale, e questo lo farai con :
if ( Serial.available() ) { ....... }
Se un carattere è disponibile (ovvero se il precedente IF è vero), potrai leggere il singolo carattere con :
mioChar = Serial.read();
e, nella variabile mioChar, che dovrai aver in precedenza definita come "char", ti troverai il carattere ricevuto dalla seriale e potrai quindi visualizzarlo.
Ti consigli comunque lo studio del reference relativo alla parte della Serial ...
Ciao, ho seguito il tuo consiglio ma non ottengo comunque il risultato sperato.
Praticamente ho scritto un applicazione su android che permette la comunicazione in seriale tramite bluetooth con arduino il problema e che sia mandando l'input dal pc sia dal telefono la parola mi viene scomposta lettera per lettera quindi il monitor mi visualizza una lettera per volta.
Come posso far comparire tutta la parola istantaneamente?
Allora, di questa cosa se ne è parlato qualche migliaia di volte sul forum ... se fai un po' di ricerche ci sono moltissime discussioni in merito ...
Brevemente, se ti sei studiato la classe Serial, hai visto che puoi ricevere i dati in vari modi ...
... la Serial.read() legge un carattere alla volta, e quindi dovresti saper gestire un array dove mettere i vari caratteri da stampare poi in un solo colpo, l'altra strada, in cui impari ben poco perché usi la "pappa fatta" è ... usare le varie "parsexxxx" o "readBytes" che trovi documentate sempre nel link che ti ho già indicato da studiare ...
Sisi, sono nuovo di arduino ma non è la prima volta che mi approccio alla programmazione, non prendo mai roba già fatta! A costo di scrivere mille righe di codice
Comunque penso di aver capito, grazie mille! nel caso non riuscissi devo creare un nuovo post o posso replicare qui?