[Linux-Biella] aiuto su variabili arduino?

Jumping Jack jumpingjack a jumpingjack.org
Gio 6 Apr 2017 12:25:20 CEST


On 06/04/2017 12:00, Leonardo Buffa wrote:
>
> ciao
> sto inviando un singolo carattere su un socket
>
> (classico echo 1|bc 192.168.1.10 80)
>
> ricevo correttamente grazie al codice:
>
>   EthernetClient client = server.available();
>   if (client) {
>     while (client.connected()) {
>       if (client.available()) {
>         char c = client.read();
>         Serial.print(c);
>       }
>     }
>     // give the web browser time to receive the data
>     delay(1);
>     // close the connection:
>     client.stop();
>   }
>
>
> infatti viene ricevuto correttamente
> io avrei bisogno, in base a questo, di aggiornare una variabile "int" 
> definita precedentemente
>
> ma se dopo il: char c = client.read();
> aggiungo: variabile = c;
>
> fa casino perche' "c" e' di tipo char
> allora provo anche a fare una correzione con:
> int tempvar = c;
> variabile = tempvar;
>
> ma comunque non funziona...
>
> idee in merito?
>
>
Arduino usa solo un surrogato del C, inoltre capita che faccia 
puttanate, tipo non compilare un codice o compilarlo male semplicemente 
cambiando l'ordine delle righe (che non hanno influenza tra di loro).
In ogni caso devi sempre usare il casting su arduino altrimenti avrai 
risultati a caso.
"variabile = (int) c"  dovrebbe funzionare.



Maggiori informazioni sulla lista Linux