Microcontrollori PIC, microcontrollori Atmel, microcontrollori ARM, Freescale, Texas Instruments, STM, Renesas, NXP etc. A 8bit, a 16bit ed a 32bit! In questa categoria troverete progetti sui microcontrollori, firmware per programmare microcontrollori e tutorial. Ci sono anche articoli su Arduino e DSC, i microcontrollori con a bordo funzioni DSP e molto altro!
Il monitoraggio della temperatura è un compito di ingegneria molto diffuso e comune. Sia in laboratorio che in fabbrica, eseguire misure accurate ad alta risoluzione può essere difficile e costoso. Nell’ambito della Microchip, possiamo disporre di una serie di sensori di temperatura con un certo range tipico di accuratezza a temperatura ambiente che può variare da ± 1 °C fino a scendere al di sotto dell’unità per sensori high-precision. Tuttavia, a temperature estreme, l'accuratezza diminuisce in modo non lineare, tipicamente quadratica. In questo articolo descriveremo una tecnica di compensazione matematica per migliorare l’accuratezza di un sensore in un determinato …
Lettura con bilanciamento di carica con microcontrollore Ecco un’altra tecnica di lettura di sensori analogici adatta in tutte le applicazioni in cui è necessaria una buona accuratezza. La tecnica, nota come metodo del bilanciamento di carica, prevede la carica di un condensatore da parte del sensore e la scarica dello stesso attraverso una resistenza di riferimento. Il microcontrollore inserirà la resistenza di scarica per opportuni intervalli di tempo in modo da mantenere costante la carica media del condensatore. La lettura del sensore viene determinata contando quante volte la tensione sul condensatore supera una tensione di riferimento arbitraria. Questa tecnica è …
Una panoramica sul protocollo di comunicazione CAN (Controller Area Network) ed un approfondimento sull'utilizzazione del canbus con il dsPIC30F. Inoltre un interessante studio sugli interrupt e sulla gestione errori del modulo CAN del dsPIC30F. Il sistema di comunicazione CAN risale alla fine degli anni ’80 ma solo verso la metà degli anni ’90 prende piede nel settore automotive. Vista la sua robustezza ed immunità al rumore, la sua applicazione si è allargata fino a coinvolgere il settore elettromedicale e dell’automazione industriale e oggi è considerato uno dei protocolli di trasmissione più utilizzati in campo industriale. Le specifiche del protocollo sono …
Una famiglia di FPGA a basso consumo rende possibile il progetto di dispositivi USB con alimentazione a bus, minimizzando la temperatura, le perdite e le dimensioni del die. Con diversi miliardi di dispositivi presenti sul mercato, l’interfaccia USB (Universal Serial Bus) è l’interfaccia d’elezione per le connessioni a velocità inferiori al gigabit fra host e dispositivi periferici. Tuttavia, a causa delle forti limitazioni in termini di corrente operativa di spunto ed allo stato stazionario previste dalla specifica USB, gli FPGA spesso non sono neppure considerati per le applicazioni alimentate a bus, a favore di soluzioni su microcontrollore, meno flessibili …
Le diverse tecnologie di produzione della program memory dei microcontrollori Flash di Microchip: le differenze tra le famiglie di microcontrollori PIC16 e PIC18, i metodi di scrittura e la gestione di un bootloader. La continua ricerca di migliori performance ed abbassamento dei costi dei dispositivi, ha portato allo sviluppo di diverse tecnologie di costruzione della Program memory. Ad oggi si possono pensare a quattro diverse tecnologie costruttive per realizzare la cella di memoria, ed in particolare si parla di: ROM o Read Only Memory. In questi microcontrollori, il codice di fatto viene univocamente definito in fase costruttiva, definendo una maschera …
È online EOS Top12 di novembre, i migliori articoli di Elettronica e Tecnologia! Nel numero di questo mese troverete articoli di qualità sul mondo dei microcontrollori e molti progetti interessanti: cominciamo con auricolari wireless, le prime cuffie senza fili con una perfetta aderenza all'orecchio; interfacce seriali SPI e I2C a confronto; convertitore AD dei microcontrollori PIC; Superenalotto, scopriamo le possibilità di vincita grazie al linguaggio C; ICD2 vs ICD-U; il driver perfetto per pilotare i LED; PIC 24F della Microchip; libreria per LCD 16×2 compatibile con Arduino M0 PRO; come gestire il debouncing nei microcontrollori; G-RO, una valigia rivoluzionaria; …
Come generare dei ritardi precisi nei microcontrollori grazie all'utilizzo dei cicli macchina NOP e delle istruzioni CALL e GOTO. Generare ritardi precisi con delle semplici istruzioni assembler Nel caso in cui sia necessario generare dei brevi ritardi, è possibile utilizzare una sequenza di istruzioni NOP ciascuna delle quali introduce un ritardo di 1 ciclo istruzione (per i PIC 1 ciclo istruzione corrisponde a 4 cicli di clock). Ecco alcuni accorgimenti per ottimizzare al massimo le dimensioni del codice. Per introdurre un ritardo di due cicli è possibile utilizzare due istruzioni NOP, ma lo stesso risultato è ottenibile impiegando una sola istruzione …
Nella prima puntata siamo partiti dall'intenzione di dare a tutti una buona infarinatura delle schede STM Discovery al fine di portare il generico neofita a padroneggiare “appieno” questa eccezionale scheda. In questa seconda puntata, continuando nel nostro intento, scopriremo le periferiche più semplici da utilizzare per completare il quadro generale di ingressi ed uscite, esplorando gli output analogici e gli ingressi digitali e analogici, in modo tale che già dopo questo secondo articolo chiunque possa iniziare a divertirsi con i sensori e gli attuatori più comuni. Completeremo il nostro articolo con un paio di progetti pratici, realizzando dapprima un …
In commercio esistono molti strumenti di sviluppo dedicati ai microcontrollori PIC, tutti apparentemente simili ma talvolta profondamente diversi l’uno dall’altro. Questo mese parleremo di In-Circuit Debuggers confrontando l’MPLAB® ICD2 di Microchip con l’ICD-U40 di CCS in termini di usabilità e prestazioni. In-Circuit Debugger: come funziona Una delle tecniche per lo sviluppo di progetti impieganti microcontrollori, è quella di utilizzare sistemi di emulazione (ICE – In-Circuit Emulator) per la messa a punto del firmware che verrà successivamente scritto nella memoria interna del microcontrollore mediante l’uso di un programmatore. Questa tecnica richiede, ovviamente, l’uso di strumenti specifici (gli emulatori, appunto) il cui costo …
Come realizzare uno scheduler (framework che consente al microcontrollore di eseguire più task contemporaneamente) con i PICMICRO. Scheduler con PIC Il firmware proposto nel listato 1, implementa un semplice scheduler ovvero un framework che consente al microcontrollore di lanciare più task in parallelo al fine di ottimizzare l’utilizzo del micro stesso. La tecnica usata è la seguente: viene impostato il Timer1 per produrre una interruzione ogni millisecondo; ad ogni interruzione di Timer1 vengono aggiornate alcune variabili che saranno usate nel programma principale per determinare gli intervalli di tempo associati ai vari task. Nell’esempio le variabili sono gestite in modo da …
In applicazioni in cui l’interfaccia utente è piuttosto elaborata, può essere utile utilizzare una tastiera standard PS/2 (le classiche tastiere per PC) anziché il classico keypad 4x4. Ecco dunque come gestire una tastiera PS/2 utilizzando un microcontrollore PIC. Le tastiere PS/2 per PC sono oramai un prodotto consumer: si trovano a pochi euro ed hanno le forme più svariate ed i colori più strani tant’è che spesso sono veri e propri oggetti d’arredamento. A parte l’aspetto estetico, sfruttare una tastiera di questo tipo consente di risparmiare linee di I/O sul micro e, allo stesso tempo, di disporre di 101 tasti ai …
Il debouncing o antirimbalzo è un problema apparentemente banale ma che spesso è la causa di malfunzionamenti. Ecco come gestire il rimbalzo degli interruttori o dei pulsanti (debouncing) applicati all’ingresso di un microcontrollore. Benché risultino praticamente impercettibili ai sensi umani, i rimbalzi meccanici degli interruttori possono provocare transizioni spurie degli ingressi ai quali sono applicati, equivalenti a pressioni consecutive del medesimo tasto. La figura 1 mostra la tipica connessione di un interruttore in ingresso ad un microcontrollori con la tipica resistenza di pull-up. Tale resistenza ha un duplice scopo: uno è quello di mantenere a livello alto l’ingresso del micro …
Sfruttando l’uscita PWM generata da un PIC è possibile realizzare un alimentatore boost seguendo lo schema di figura 2. Alimentatore Boost L’uscita PWM pilota Q1 il quale entrando in conduzione porta a massa L1. In questa fase L1 si carica con la corrente proveniente da Vcc. Nella fase successiva, quando il segnale PWM è a livello basso, Q1 è interdetto e l’energia accumulata in L1 fluisce attraverso D1 e viene trasmessa a C2. Per il dimensionamento del circuito è necessario determinare innanzitutto il duty cycle D del segnale PWM in base al rapporto Vout/Vin secondo la relazione: Vout/Vin=1/(1-D) L1 viene invece …
Microchip, azienda leader nel settore della produzione di microcontrollori ad 8 bit, già nel corso dell’anno 2003 si era lanciata nel mondo dei 16 bit, con l’annuncio della famiglia dsPIC30F, un microcontrollore a 16 bit unito ad un core DSP. Poi, a due anni di distanza, l’atteso annuncio del puro microcontrollore a 16 bit, la cui famiglia prende il nome di PIC24. Quando, nel 2003, incontrammo nella line card di Microchip i nuovi oggetti a 16 chiamati dsPIC30F, integranti un core DSP, ci chiedemmo per quanto avremmo dovuto attendere l’uscita del puro microcontrollore. Ebbene l’attesa è terminata il 10 …
Una breve introduzione alla conversione Analogico/Digitale ed una analisi del convertitore AD del microcontrollore PIC: le caratteristiche, le prestazioni, i registri coinvolti e le routines di gestione della conversione. La conversione AD è quel processo che permette la digitalizzazione di un segnale analogico affinché questo possa essere trattato da un microcontrollore come una stringa di bit. L’informazione digitale ottenuta dal processo di conversione, differisce comunque dalla controparte analogica a causa dei processi di campionamento e quantizzazione a cui quest’ultima è sottoposta. Per questo motivo è importante condizionare il segnale analogico affinché, a seguito del processo di conversione, il contenuto informativo …
Come generare una uscita analogica da un segnale PWM. Generazione di una uscita analogica È possibile utilizzare un segnale modulato in PWM per generare una uscita analogica utilizzando pochissimi componenti esterni. La conversione da PWM ad uscita analogica viene effettuata mediante un filtro passa basso la cui frequenza di taglio Ft deve essere significativamente minore della frequenza FPWM del segnale PWM in ingresso al fine di ridurre al minimo le armoniche non desiderate. La figura 1 mostra la circuiteria necessaria, ovvero un semplice filtro passa basso realizzato con un circuito RC e bufferizzato mediante un operazionale a guadagno unitario. L’uscita è …
È uscito il nuovo numero di Firmware! Scopriamo insieme gli articoli di questo mese: innanzitutto la copertina è dedicata a LTspice, uno dei più potenti simulatori elettronici. Abbiamo poi parlato di controllo Hot Swap negli alimentatori, di un alimentatore compatto che eroga 120A e dell'importanza della reiezione. Abbiamo scoperto come realizzare un mouse “accelerato” con le MLA e la gestione dell’inrush e della protezione dei sistemi elettrici. Infine abbiamo proseguito con un articolo dedicato al getting started con Arduino Studio. Buona lettura! La copertina di Firmware n.117 Il sommario di Firmware n.117 Controllo Hot Swap e a …
In questo articolo cercherò di illustrare in modo esauriente il principio di funzionamento dei convertitori analogico digitali presenti nei microcontrollori della Microchip 16fxxx.
Nate come alternativa/concorrente di Arduino, le schede Discovery della ST offrono in ridotte dimensioni (65x96mm), o meglio quasi alle stesse dimensioni di un Arduino Due, un hardware che non ha nulla da invidiare ai concorrenti, un prezzo in certi casi addirittura di gran lunga inferiore ed un paio di MEMS (accelerometro e microfono) come valore aggiunto. Tuttavia, osservando l’altra faccia della medaglia, l’utente medio rischia di trovarsi in mano una scheda potente ma di non riuscire a far lampeggiare un led, a causa della mancanza ad oggi per queste schede di un IDE di sviluppo, unico e gratuito, nonché …
Nell'articolo si riporta la traduzione in italiano della intervista fatta al CEO di Arduino SRL, Federico Musto pubblicata tempo fa sul blog Hackaday. La sua azienda è parte della debacle “Arduino vs Arduino" che ha posto Arduino.cc contro Arduino.org in una battaglia per il marchio di fabbrica su "Arduino". Data l'enorme quantità di copertura mediatica di Massimo Banzi e del lato Arduino LLC della storia (Arduino.cc), eravamo molto interessati a conoscere l'intera situazione dalla parte di Federico Musto (Arduino.org). Scopriremo un quadro più equilibrato e completo della situazione, oltre che interessanti notizie riguardo ai futuri prodotti Arduino SRL. L'opinione di …