firmware0:
I recenti dispositivi utilizzati nel campo dell’elettronica embedded offrono capacità di elaborazione e risorse sempre maggiori, a prezzi sempre più bassi. Questo rende possibile eseguire calcoli ed algoritmi notevolmente complessi, in molti casi impensabili fino a poco tempo fa. Però …
La macro _Waiste_us il cui codice sorgente è riportato nel listato 1, consente di generare con precisione un ritardo da un minimo di 1000000/F_CPU (F_CPU è la frequenza in Hz a cui lavora il micro) fino ad un massimo di 25.769.803.779/F_CPU_in_MHz. ;****************************************************************************** …
Doxygen è uno strumento per la generazione automatica della documentazione. Chi si occupa di programmazione sa che, oltre a produrre un programma secondo le specifiche del cliente, occorre anche documentare il proprio lavoro e questo ha un peso rilevante: chi, …
La comunicazione tramite Universal Serial Bus (USB) è ormai molto diffusa ed è diventata un’interfaccia “obbligatoria” per tutti i dispositivi embedded che devono essere collegati ad un personal computer. Senza dubbio un pregio dell’USB è la funzione plug&play che permette …
Utilizzando un dspic 30F4013 è possibile realizzare un analizzatore di spettro con display grafico. Il codice sorgente è riportato nel listato 1 ed è scritto per il compilatore mikroPascal di mikroelektronika. Il programma usa il canale 10 per l’acquisizione del dato …
Il codice generato dal compilatore dipende molto dalla bontà del compilatore stesso, ma anche dal microprocessore impiegato. In questo articolo si vuole mettere in evidenza il codice generato da ARM ricorrendo ai due diversi operatori incrementali e decrementali. In ogni caso, per le nostre valutazioni ci siamo …
PWM è l’acronimo dei termini inglesi Pulse Width Modulation, modulazione della larghezza dell’impulso. Si tratta di una tecnica che consente di variare la potenza applicata ad un carico, mantenendo costante l’ampiezza della tensione erogata sull’utilizzatore e “variando” la durata degli …
Prima regola: “non usare aritmetica in virgola mobile con un AVR a meno che non sia strettamente necessario”. L’aritmetica in virgola mobile è deleteria per le applicazioni con i micro AVR sia in termini di tempo di esecuzione del programma, sia …
I microcontrollori uPSD della ST microelectronics sono una delle innumerevoli varianti realizzate su core 8051 ed immesse sul mercato molti anni fa. In questo caso ST ha integrato in un unico package il core 8051 e una periferica PSD. Unendo …
Una libreria per la gestione di dispositivi 1-wire con AVR. La libreria è scritta in C per WinAVR (AVR GCC). Per la gestione dei dispositivi 1-wire ecco una libreria in C per l’inizializzazione, l’invio e la ricezione dei dati. La funzione …
In questo articolo si introdurrà il concetto di regolatore boost operante in modalità discontinua, implementato tramite microcontrollore PIC16C78X. In particolare, si realizzerà un elevatore di tensione da 9VDC a 170VDC. Tale valore è perfetto per fornire potenza, ad esempio, ad …
In un qualsiasi microcontrollore la tensione di alimentazione deve essere stabile e costante entro i limiti specificati dal costruttore. Se l’alimentazione scende al di sotto di un valore di soglia minimo, le istruzioni non vengono eseguite correttamente ed i registri …
Come allestire un framework per consentire l’esecuzione di più task in parallelo su un PIC16F877 Disporre di uno scheduler per un PIC16F877 è sicuramente utile in quanto rende possibile l’esecuzione di più tasks in parallelo ottimizzando così le performance del micro. …
Microcontrollori PIC e compilatori C di Hi-Tech: come ottimizzare il codice per massimizzare la velocità di esecuzione in applicazioni embedded. Come effettuare una conversione RS232/DMX con AVR. Suggerimenti generici Spesso, nelle applicazioni embedded, è necessario ottimizzare il codice per ottenere le massime …
Lo sviluppo di sistemi embedded basati sul protocollo di comunicazione USB sono sempre più diffusi e tendono a soppiantare altri tipi di comunicazioni come quella seriale. A differenza di quest’ultima, la trasmissione dati tramite l’Universal Serial Bus può essere abbastanza …
CONVERSIONE SERIALE/DMX CON AVR Ecco come realizzare un convertitore da seriale verso il protocollo DMX tipicamente usato nel campo del controllo dei sistemi di illuminazione. L’hardware è piuttosto semplice: un AVR (90S2313) il cui UART (PD0 e PD1) sono connessi …
Il microcontrollore Freescale (ora NXP) MCF5213 è dotato di un controller DMA a 4 canali per velocizzare le operazioni di accesso diretto alla memoria. MCF5213 rappresenta una famiglia di microcontrollori a 32 bit ad alta integrazione basata su un'architettura ColdFire e …
Il chip RSC-4128, prodotto molti anni fa dalla Sensory, è un microcontrollore ad 8 bit dotato di ADC, DAC, preamplificatore microfonico, RAM, ROM, 24 GPIO (General Purpose Input Output) e 4 timer. Il chip implementa (tramite un apposito firmware precaricato, il …
Le potenzialità messe a disposizione dal chip MCF52233 di Freescale (ora NXP) offrono al programmatore la possibilità di creare in pochi passi un server web personalizzabile con cui realizzare il controllo remoto di apparecchiature elettroniche. L’MCF52233 lanciato molti anni fa è basato su …
Il multicontrollore Propeller è un dispositivo della Parallax inc. contenente otto processori RISC a 32 bit e può gestire direttamente un’uscita video VGA, videocomposito, una tastiera, un mouse. Ben otto processori RISC a 32 bit indipendenti, tutti uguali, sincronizzati dallo stesso clock che può …