Errori comuni nell’uso di Arduino – inizializzazione di più variabili

La tentazione di risparmiare linee di codice è sempre in agguato e tentare di inizializzare più variabili su una sola riga è forte, però alcune volte ciò che intendiamo fare non corrisponde a ciò che correttamente intende il compilatore.

Con la scrittura:

int x, y, z = 67;

non viene assegnato il valore 67 ad ogni singola variabile, ma solamente la variabile z viene inizializzata a 67.

L’errore quindi non risiede nella scrittura, il compilatore non restituirà errore, ma nel modo in cui il programmatore intende l’assegnamento credendo che tutte le variabili vengano inizializzate a 67.

La scrittura

int x = 67, y = 67, z = 67;

permette l’assegnamento del valore 67 ad ogni singola variabile. Si ricordi di separare ogni assegnamento da una virgola, ciò accade solo e soltanto se si indicano tipo e assegnamento su stessa linea.

Per l’assegnamento di valori diversi scriveremo:

int x = 99, y = 3, z = 67;

Io in genere preferisco una scrittura di questo tipo:

int x = 99;
int y = 3;
int z = 67;

che permette di visualizzare meglio le variabili utilizzate, non favorisce fraintendimenti nell’assegnamento e permette inoltre di scrivere chiaramente un commento a lato di ogni assegnamento.

Esercizio (semplice semplice 🙂 ) per i miei studenti:

Realizzare uno sketch che dimostra quanto esposto in questo post.

Buon Coding 🙂

Smanettamento ramdomico, parte 1

4 chiacchiere tra amici per parlare della tecnologia che ci piace usare e di ciò che stiamo sperimentando per lavoro e per divertimento in questi giorni.

Un mini Talk Show disordinato, senza scaletta, un concentrato di improvvisazione. Nessuna pretesa di risposta a quesiti tecnici, ma solamente un confronto sereno prima di andare a cena.

Se vi fa piacere vi aspettiamo lunedì 23.03.2020 alle ore 18,30 in Live Streaming su YouTube.

Fiorella, Ludovico e Michele.

Errori comuni nell’uso di Arduino – dimenticare il punto e virgola dopo il return

Errore:

if (contatore < 60)
    return    // manca il punto e virgola
contatore = contatore + 1;

Il codice sopra viene compilato come se fosse:

if (contatore < 60)
return contatore = contatore + 1;

Si ricorda che dopo un return incondizionato il codice che segue non verrà mai eseguito.

Ad esempio:

contatore = contatore + 1;
return contatore;
contatore = 10; // questa linea di codice non verrà mai eseguita

Esercizio (semplice semplice 🙂 ) per i miei studenti di terza:

Realizzare due sketch che accettano un input numerico intero da tastiera (sulla Serial Monitor) che dimostrano le due situazioni esposte nella spiegazione precedente.

Strumenti per la didattica online: Google Classroom

Prosegue la serie di Webinar gratuiti dedicati all’uso di strumenti per fare didattica a distanza.

Mercoledì 25 marzo 2020 dalle ore 17.00 alle 18.00 parlerò di Google Classroom.

Google Classroom è l’applicativo online di Google che permette, con estrema semplicità, la realizzazione di una didattica in e-learning, con esso è possibile creare e gestire in modo semplice comunità di apprendimento e sviluppare contesti didattici simili a quelli in presenza.
Le sue caratteristiche di fruizione su qualsiasi dispositivo (computer, smartphone, tablet) e sistema operativo, lo rendono uno degli strumenti più interessanti, semplici ed immediatamente utilizzabile dal docente e dallo studente, soprattutto in questo momento di emergenza in cui tutte le attività vengono svolte online.
Nel Webinar verrà mostrato come gestire ogni attività didattica: conversazioni, compiti, esercizi, calendario e registro di classe in una modalità operativa assolutamente protetta e chiusa alla sola classe, inoltre, poiché Classroom è fortemente integrato con molti applicativi della GSuite (Google documenti, Google Forms, ecc…), si mostreranno esempio di interazione ed utilizzo tra le diverse applicazioni.

Iscrizioni limitate, per maggiori informazioni vi rimando al link sul sito di Tecnica della Scuola.

Installare node.js e Node-RED su MacOSX

In questi giorni mi sto occupando di Node-RED per programmare il Siemens IOT 2040 che posseggo e su cui sto sviluppando una serie di automazioni, nel contempo ho installato Node-RED su MacOSX, Windows e Raspberry Pi in modo da predisporre delle brevi guide per i miei studenti. Condivido con voi questo tutorial passo passo per l’installazione su MacOSX, seguiranno tutorial di installazione per gli altri sistemi operativi.

Siti di riferimento per l’installazione:

Esistono diverse modalità di installazione quella seguita da me fa uso di NPM.

Per utilizzare Node-RED è indispensabile installare node.js, consiglio di utilizzare la versione LTS (long-term maintenance) di node.js. Collegatevi al sito https://nodejs.org/en/ e prelevate la versione LTS:

Se farete doppio click sul file .pkg vi comparirà il messaggio di sicurezza:

“Click + Control” sul file e selezionate Open:

Comparirà nuovamente la finestra di Alert precedente, ma questa volta sarà presente il pulsante Open su cui dovrete fare click:

Continua a leggere