Archivio Categoria: Arduino

mag 09 2013

Nuova libreria advancedFunctions per Arduino DUE

Ho iniziato a scrivere una libreria che permette di utilizzare le periferiche integrate nel microcontrollore Atmel SAM3X8E dell’Arduino DUE che non sono ancora supportate dal core dell’IDE di Arduino. Al momento la libreria, chiamata advancedFunctions, supporta l’orologio in tempo reale (Real Time Clock, RTC), che fornisce un orologio ed un datario nonché un allarme, ed …

Continua a leggere »

apr 27 2013

LED clock

Vi presento il LED clock, un orologio a LED che visualizza l’orario usando la modalità decimale e dividendo i LED in colonne rappresentanti le decine/unità di ore, minuti e secondi. Rispetto agli orologi binari che si vedono in circolazione, la lettura è molto più immediata. L’orologio utilizza un ATmega328P ed un PCF8563 come RTC esterno. …

Continua a leggere »

apr 14 2013

Nuova libreria pRNG

In un ritaglio di tempo ho scritto una nuova libreria che ho chiamato pRNG, acronimo di pretty Randon Number Generator, ossia Generatore di Numeri Casuali Carino. La libreria fondamentalmente è un generatore di numeri pseudo casuali. Utilizza un interrupt sollevato dal WatchDog Timer per collezionare entropia usando un timer dell’Arduino (o del microcontrollore) ed un …

Continua a leggere »

apr 14 2013

Scegliamo la giusta scheda Arduino

La gran varietà di schede Arduino può mettere in crisi il neofita che per primo si avvicina al mondo dell’elettronica e vuole farlo con uno di questi prodotti. Cerchiamo di capire come scegliere il prodotto migliore per le nostre esigenze, sia nel caso si cerchi una scheda per iniziare sia che se ne cerchi una …

Continua a leggere »

mar 26 2013

La memoria SRAM dei microcontrollori

SRAM memory usage

Come detto in un precedente articolo, l’architettura di un microcontrollore è di tipo Harvard, dove la SRAM (Static Random Access Memory) che contiene i dati del programma è separata dalla memoria Flash che contiene il programma stesso. Ma non tutti sanno che l’interno di questa RAM (ometto la “S”) è condiviso da più aree dati, …

Continua a leggere »

nov 20 2012

Aggiungere il supporto per gli Atmega644P/1284P all’Arduino IDE 1.0.x (aggiornato)

Le versioni 1.0.1 ed 1.0.2 di Arduino introducono il supporto ai microcontrollori Atmega644P/1284P. Di serie, però, l’IDE non permette di utilizzare questi microcontrollori in maniera ottimale: è necessario aggiungere un file per descrivere in modo completo la mappatura dei pin di questi chip nonché anche modificare alcuni file affinché essi siano pienamente supportati in tute …

Continua a leggere »

nov 16 2012

leOS2

L’appunto più frequente che hanno fatto gli utenti del leOS era l’incompatibilità fra il mio scheduler ed altre librerie che usavano lo stesso timer usato dal leOS. Per questo motivo ho deciso di seguire un’altra strada per ottenere uno scheduler funzionante ed ho scelto di utilizzare il WatchDog. Il WatchDog è un circuito normalmente utilizzato …

Continua a leggere »

nov 03 2012

analogComp, una libreria per gestire il comparatore analogico

Oggi vi presento analogComp, una libreria che potete usare per gestire il comparatore analogico integrato nei microcontrollori Atmel.Un comparatore analogico è sostanzialmente un amplificatore operazionale utilizzato in modalità comparatore di tensione che imposta su High la sua uscita quando la tensione presente sull’ingresso non invertente supera quella presente sull’ingresso invertente. Gli ingressi possono essere due …

Continua a leggere »

ott 27 2012

Come aggiornare la toolchain AVR alla versione 3.4.1 (Linux)

La toolchain AVR di Gnu è quell’insieme di eseguibili e librerie che servono a creare programmi per i microcontrollori Atmel. La toolchain distribuita con l’IDE 1.0.1 di Arduino è vecchia ed ha un problema noto: non permette di ottenere sketch funzionanti più grandi di 64 kword (128 kB) per via di un bug contenuto nella …

Continua a leggere »

ott 24 2012

Come sapere l’occupazione di RAM del proprio sketch

Molti dei moderni microcontrollori sono basati sull’architettura Harvard, vale a dire separano la memoria che contiene il programma, solitamente di tipo non volatile (Flash), dalla memoria che contiene i dati, memoria di tipo volatile (SRAM). Siccome il quantitativo di questa memoria è ridotto, può succedere di saturarla completamente anche con sketch che occupano una piccola …

Continua a leggere »

Post precedenti «