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!
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 …
Come annunciato la settimana scorsa, abbiamo acquisito la rivista Firmware! Per i pochi che ancora non la conoscono, Firmware è un magazine tecnico con articoli di microelettronica, focalizzata in particolare sui microcontrollori ed appunto sulla loro programmazione. Per tutto il team di Elettronica Open Source è stata una grande soddisfazione ma per me lo è ancora di più! Erano i primi mesi del 2006, mi ricordo che stavo progettando FTPmicro (il primo webserver di 8 cm) e mentre leggevo una rivista di elettronica, una di quelle presenti allora in edicola, pensavo: "non è possibile, ancora lo stesso articolo, non …
Tutti gli sviluppatori ed i programmatori, anche i più esperti, una volta scelto l'hardware di riferimento, hanno bisogno di sistemi adatti allo sviluppo, versatili e performanti, che siano in grado di offrire loro le giuste opportunità e gli strumenti più idonei per realizzare e testare la loro applicazione. La ricerca di una piattaforma adeguata è parte integrante del progetto ed il giusto consiglio può rendere questa fase sicuramente più semplice e meno problematica. Tutti coloro che hanno già esperienza con MPLAB saranno sicuramente felici di scoprire Explorer 16, una scheda che viene strutturata come demo board per mostrare in …
Questi nomi sono sicuramente noti ai più. Nonostante sia la popolarità a distinguerli, il loro funzionamento viene spesso ignorato o non compreso. Attraverso questo articolo si cercherà di comprenderne in maniera chiara e schematica i concetti basilari, indispensabili per spiegarne il funzionamento. Di seguito verrà descritto in che modo questi dispositivi implementano i filtri FIR. Si tratta, senza dubbio di dispositivi ''relegati'' all’ambito professionale, questo non deve tuttavia spaventare nessuno: imparare ad utilizzarli potrá permettervi di realizzare progetti molto complessi coprendo un ampissimo spettro di possibilità di progettazione. La differenza sostanziale, che non si dovrà mai scordare, tra l'uno …
Per chi scrive codice già da un po’ di tempo, sicuramente i termini interrupt (o interruzione) e polling non sono affatto nuovi; si tratta di due tecniche che possono essere utilizzate per mettere in allerta la scheda di sistema, come ad esempio un microcontrollore, quando ci si trova in presenza di un input. Ma qual è la differenza tra i due metodi? Uno è meglio dell’altro, o la loro utilità varia a seconda delle situazioni? Sia l’interrupt che il polling presentano dei vantaggi e degli svantaggi, scopriamoli insieme! Polling: verifica ciclica di tutte le operazioni di input/output Quando si …
Lo sviluppo del movimento maker, cresciuto soprattutto negli ultimi tre anni, sta rapidamente cambiando il mercato dei microcontrollori che, al contrario di ciò che è avvenuto per i microprocessori e i computer, è rimasto fino a poco tempo fa un settore per specialisti, con formazione elettronica più che informatica. Le aziende che producono board per sistemi embedded devono oggi per la prima volta confrontarsi con un nuovo tipo di domanda. Nel 1968 l’italiano Federico Faggin sviluppò la Fairchild presso la “Silicon Gate Technology” che, consentendo l’integrazione di circuiti logici su larga scala (LSI), rese possibile la realizzazione dei microprocessori, cioè chip contenenti un’intera CPU. A …
Gli effetti di luce, insieme a quelli acustici ed agli effetti speciali realizzati in computer grafica, sono tra gli elementi più interessanti e divertenti di tantissime applicazioni; non soltanto nel cinema o in televisione ma anche durante le feste. Oggi vi proponiamo una soluzione educational davvero interessante che vi consentirà di sperimentare l'illuminazione a LED a partire da una struttura cubica che potrete animare a vostro piacimento. Quando l'elettronica diventa divertimento, tutto è più semplice e più piacevole. E ovviamente il componente circuitale con cui è più semplice iniziare a fare delle prove è quello che produce l'output più …