Archivi tag: arduino

Massimo Banzi: How Arduino is open-sourcing imagination

Massimo Banzi helped invent the Arduino, a tiny, easy-to-use open-source microcontroller that’s inspired thousands of people around the world to make the coolest things they can imagine — from toys to satellite gear. Because, as he says, “You don’t need anyone’s permission to make something great.”

Grazie a Niccolò Bertoldi per la segnalazione.

Codebender: un IDE Arduino online

Siete un programmatore professionista, un hacker hardware o un artista? Con Codebender potrete realizzare i vostri sketch in modo semplice e veloce utilizzando un editor di testo ricco di funzionalità, tantissime librerie incluse e vasta documentazione. Potrete memorizzare gli sketch sul cloud ed usare il compilatore di Codebender per creare eseguire ed effettuare il debug, tutto attraverso il browser e quando avete concluso di scrivere potrete caricare direttamente il vostro programma su Arduino direttamente attraverso il vostro browser, non è richiesta nessuna installazione!

Una delle innovazioni più interessanti portate da Codebender sarà quello di usare un bootloader TFTP, in questo modo utilizzando una shield Ethernet, sarà facile caricare codice su qualsiasi Arduino connesso ad Internet in qualsiasi parte del mondo. Immaginate le innumerevoli applicazioni possibili, non vedo l’ora di vederlo in azione.

Quando tutto ciò sarà possibile? Al più preso, Stay tuned!

Per maggiori informazioni seguite il link.



Appunti su Arduino: interrupts


Dopo l’estenuante periodo di fine anno scolastico passato tra interrogazioni, recuperi, esami di qualifica, esami di alternanza scuola lavoro, preparazioni tesine e svariate riunioni/scrutini… riesco a rimettere mani sui miei appunti realizzati durante l’anno scolastico e questa volta colgo l’occasione di rispondere al commento di Raffaele che vuole avere ulteriori informazioni sull’uso degli interrupt in Arduino:

salve sono un vecchio appassionato di elettronica (analogica )- Essendo che ci siamo dovuti convertire sui microcontrollori solo 5 mesi fà sono riuscito finalmente dopo aver tentato con i PIC ,sono passato ad Arduino
duemilaenove e finalmente ho incominciato a capirlo e sviluppare tutti i tipi di esempi che dava nel softwere, dal led ai motori passo passo
e i servo perchè il tipo di programmazzione e soprattutto molti esempi erano spiegati
pure in video e come dicevo sono riuscito a capirci qualcosa.Ovviamente nel mio caso
riuscivo a modificare quelli già presenti ma in sostanza ero abbastanza sodisfatto perchè su di uno sviluppavo le modifiche creandone dei nuovi. Adesso però mi sono fermato un pò perchè ho una richiesta da farle.Pur avendo letto e capito l’istruzione
interrupt cosa significa avendola vista in altri programmi qualè il suo scopo non riesco a capire come inserirla avrei bisogno quindi se possibile di qualche esempio o modo di capire. Ci conto molto

A risentirci e Grazie

Di seguito vi riporto la parte (provvisoria) del manuale che ho realizzato per i miei studenti che si riferisce agli interrupt (sto realizzando alcuni esempi pratici che chiarificano questa funzionalità), sono tratte dal reference on-line di Arduino.cc con alcune mie rielaborazioni.

Con il termine interrupt (interruzione) intendiamo un segnale asincrono che indica la necessità di “attenzione” da parte di una periferica collegata ad Arduino.
L’interrupt viene generato quando si verifica una variazione di stato su uno dei piedini di Arduino. Normalmente il microcontrollore esegue all’interno del loop() in modo sequenziale e ripetitivo le istruzioni in esso inserite, ma quando si verifica un interrupt viene interrotto il flusso delle istruzioni all’interno del loop() ed invocate altre routine (create dall’utente). Quando le routine terminano il flusso del programma prosegue normalmente.
L’utilizzo dell’interrupt è particolarmente utile quando abbiamo la necessità di gestitire in background alcune routine ovvero eseguire istantaneamente un’operazione nel caso si manifesti un evento asincrono esterno.

Capita spesso di avere la necessità di controllare lo stato di diversi pin di input, in questa situazione potrebbe capitare che il programma non si accorga del cambiamento di stato su uno dei pin, utilizzando gli interrupt evitiamo questo tipo di errore.

Continua a leggere

SIMFORARDUINO: simulatore per Arduino

Ricevo la segnalazione da Angelo De Marco che, sul noto portale Elettronica Open Source, viene data un’estesa e completa recensione di un ottimo simulatore per Arduino: SIMFORARDUINO che si differenzia dagli attuali simulatori disponibili on-line in quanto non presenta differenze sostanziali dal funzionali della scheda reale. Sicuramente un prodotto da tenere in dovuta considerazione in ambito didattico e per velocizzare lo sviluppo e la prototipazione prima di sviluppare sull’hardware.
Immagino ad esempio alla possibilità da parte degli studenti di sperimentare a casa, ma anche alla prototipazione per la scelta dei componenti più idonei per un progetto.

Vi rimando all’articolo per tutti gli approfondimenti.

Per chi fosse interessato nella sezione Arduino di questo sito, al paragrafo “Simulatori Arduino” vengono dati i riferimenti dei simulatori attualmente più utilizzati a cui ho aggiunto anche Simforarduino.

Appunti di programmazione su Arduino: controllo di flusso

if

L’istruzione if è composta da un blocco “condizione” che verifica se una deterniata condizione logica si verifica. Se la “condizione” risulta “Vera“, viene eseguita un blocco “istruzioni“, se la “condizione” risulta “Falsa“, non viene eseguito il blocco “istruzioni” e l’esecuzione del programma prosegue oltre l’istruzione if.

In altro modo, se la condizione di controllo, costituita ad esempio dal superamento di un valore analogico rispetto ad un valore dato, risulta vera, verrà eseguito il codice incluso tra le parentesi graffe che seguono il controllo, altrimenti se la condizione di controllo risulta falsa, non vengono eseguite le istruzioni dell’if  e l’esecuzione del programma continua con la porzione di codice che segue.

if (someVariable ?? value)
{
   doSomething;
}

(con ?? indichiamo l’operatore logico usato dalla condizione di controllo e può essere: =, =, ==, !=)

Continua a leggere