Microcontrollori & FPGA:

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!

Controllo sequenziato delle fasi di un processo

In molti processi gestiti da controllore è ricorrente la necessità di temporizzare le fasi degli stessi processi. Affinché ciò sia possibile è necessario che il controllore disponga di opportune risorse fisiche (timer) e che il firmware le sfrutti adeguatamente Nell’automazione industriale è ricorrente la necessità di gestire un processo composto da una sequenza di attività (fasi) che devono susseguirsi secondo una ben precisa sequenza temporale. A tale scopo, i processi industriali più complessi sono gestiti da appositi computer oppure da PLC. Ci sono tuttavia molte piccole applicazioni (singole macchine utensili o elettrodomestici per esempio) in cui è sufficiente, per raggiungere lo scopo, impiegare una scheda di controllo con un piccolo controllore a bordo. Affinché ciò sia possibile è necessario che il controllore integri dei timer e che il firmware ne sfrutti …

Realizziamo un multiplexer video-composito

Realizzare un Multiplexer Video-Composito, essenziale ma non privo di utili funzionalità, è estremamente semplice se si impiegano opportuni amplificatori video integrati dotati di ingressi di abilitazione. Logiche multiplexer anche piuttosto complesse possono allora essere implementate in firmware e attuate mediante un controllore che interfacci e piloti l’integrato video La diffusione delle reti LAN Ethernet ha reso estremamente agevole la realizzazione di impianti di videosorveglianza anche complessi. L’impiego di telecamere IP, di apparati di rete e di registratori NVR (Network Video Recorder) permette di realizzare il monitoraggio video di siti mediante un semplice PC connesso alla stessa rete. Nonostante ancora oggi, se si deve realizzare un piccolo impianto poco esteso costituito da poche telecamere e magari caratterizzato da un unico punto di supervisione, come nella portineria di un piccolo stabile o di una piccola attività lavorativa, tanta tecnologia può risultare sprecata. …

Il micro di Cypress: PSoC

Il PSoCTM, prodotto di Cypress, non è il classico microcontrollore, ma qualcosa di più grazie alla presenza di blocchi analogici e digitali completamente configurabili a livello funzionale, così come le interconnessioni tra loro, al fine di sostituire con un singolo chip più blocchi funzionali. In questo modo l’utente può creare configurazioni ad hoc di periferiche che soddisfano le richieste di un particolare progetto. Esso rappresenta il giusto compromesso tra le logiche programmabili ed i microcontrollori. Introduzione Con il termine PSoCTM  (Programmable System-on-Chip) si indica la famiglia dei sistemi prodotti da Cypress. L’architettura del PSoC è costituita da quattro aree funzionali: il core il …

Corso Embedded ARM: sistemi operativi real time

I sistemi embedded si interfacciano con il mondo esterno ed elaborano i dati provenienti dalle diverse periferiche. Elaborare e gestire tutte le informazioni in maniera efficiente può diventare un compito non facile quando le applicazioni non sono banali e le interfacce da gestire sono diverse, con diversi requisiti di timing. Per venire incontro a queste esigenze si utilizzano i Sistemi Operativi Real Time o RTOS. I diversi approcci per la gestione del flusso di esecuzione di un'applicazione Come abbiamo avuto modo di vedere nelle precedenti lezioni, esistono differenti modi di gestire il flusso di esecuzione di un'applicazione: polling (dall'inglese to …

Pilotare un LCD Grafico (GLCD)

Gli LCD Grafici (GLCD-Graphic Liquid Crystal Display) sono terminali di visualizzazione impiegati nelle apparecchiature elettroniche. Vediamo in che modo è possibile interfacciarli con un controllore PIC di Microchip In questo articolo vogliamo mostrare come sia possibile interfacciare con un PIC e con altrettanta facilità, impiegando il compilatore MikroC e le sue librerie, un Display Grafico (GLCD-Graphic Liquid Crystal Display) 128x64 (figura 1). Lo schema elettrico del circuito (figura 2) è legato alle specifiche funzioni delle linee dati e di controllo del GLCD; i pin del controllore connessi al GLCD sono scelti di conseguenza e il firmware  è quindi stilato, corrispondentemente, in funzione di questi due vincoli. L’interfacciamento elettrico del display necessita di 14 linee del controllore distribuite tra linee dati e …

Pilotare i carichi con un microcontrollore

Solitamente un microcontrollore non è in grado di pilotare carichi di potenza. Esso infatti può gestire piccoli dispositivi con assorbimento di corrente pari a pochi milliampere. Se una MCU deve illuminare un diodo Led o pilotare un display LCD, il problema non sussiste. Ma cosa succede invece quando il micro deve comandare l’accensione di un motore o di una lampada di potenza? L’articolo passa in rassegna alcuni metodi di collegamento inerenti le uscite di un microcontrollore. Collegamento diretto di una sola uscita Si tratta del collegamento tradizionale e quindi più semplice. Esso prevede la connessione diretta tra una porta d’uscita della MCU e il carico da attivare. Dal momento che, …

Controllo di motori brushless con il metodo della terza armonica

Il controllo di un motore in continua di tipo brushless (BLDC – BrushLess DC) senza ricorrere ad alcun sensore di posizione è stato oggetto di parecchie ricerche e ha dato vita a numerose implementazioni. Lo scopo del presente articolo è descrivere un metodo di controllo originale e proporre una realizzazione semplice e a basso costo che prevede l’uso di un microcontrollore di tipo general purpose e un convertitore A/D esterno. Sebbene le più recenti tendenze privilegiano l’integrazione di tutti in componenti all’interno del microcontrollore, verrà mostrato come un componente ADC121S625 della TI permette di risolvere problemi di natura analogica di una certa entità, assicurare risparmi a livello di microcontrollore e …

Perché conviene consultare i datasheet

Quando una persona deve prendere le medicine, il primo pensiero è quello di leggere il "bugiardino" ovvero quel piccolo foglietto stampato che si trova all'interno della scatola e che illustra la composizione del farmaco, le caratteristiche, le modalità d'uso e le avvertenze. Il progettista elettronico dovrebbe fare la stessa cosa, consultando i datasheet. Vediamone il perché. Il datasheet è la documentazione completa di un componente elettronico, solitamente scritta in lingua inglese e distribuita in formato PDF. La sua consultazione è fondamentale, quando si decide di realizzare un progetto. Consultando un datasheet si ha la garanzia di lavorare e di …

La potenza dei microcontrollori per l’analisi matematica: Serie di Taylor-Maclaurin

L’elettronica, come la maggior parte dei rami scientifico ingegneristici, per l’interpretazione dei dati richiede la risoluzione di equazioni talvolta molto complesse. Ma come è possibile che un microprocessore sia in grado di eseguire un calcolo trigonometrico utilizzando solamente addizioni e sottrazioni? I rami della matematica, e i teoremi ad essa legati, sono innumerevoli, spesso di difficile interpretazione e raramente implementabili, ma altre volte utili alla risoluzione di problematiche altresì incalcolabili. Da numerose ricerche effettuate, i consigli ricevuti per il calcolo del seno di un ipotetico angolo “x” utilizzando un PIC, riguardavano la realizzazione  di una tabella: ogni parametro di x viene corrisposto in un determinato valore del seno. Certo, questo metodo risulta efficace nell’approssimazione, ma richiede l’utilizzo di un elevata quantità di memoria, …

Sviluppare un progetto con MPLAB®

Un buon ambiente di sviluppo integrato è il segreto del successo nella programmazione dei micro. MPLAB® IDE rappresenta la sala comandi per PIC e dsPIC (MPLAB X è la versione successiva). Si tratta di una applicazione a 32bit  supportata  dal  sistema operativo Windows, semplice da utilizzare. Con un unico software è infatti possibile gestire tutte le fasi, dalla stesura del codice alla programmazione del micro. Nel presente articolo si cercherà di comprendere i vari passi che caratterizzano l’intero ciclo di vita del firmware, realizzato tramite  MPLAB IDE; si andrà dalla progettazione e scelta del dispositivo alla sua programmazione,  passando per le varie fasi …

Un tasto tante funzioni

Quando si progetta un prototipo, più o meno complesso, prima o poi si fa sentire l’esigenza di disporre di tante porte di ingresso. Ad esempio, in un ipotetico progetto che pilota un display LCD, possono esserci diversi tasti: un tasto può essere adibito alla selezione della modalità operativa, un altro a far scorrere il cursore a destra, un altro ancora a farlo scorrere nella direzione opposta, un altro ancora a confermare i dati, e cosi via. In questo modo, in breve tempo, tutte le porte sono utilizzate per l’interazione degli eventi con l’operatore e ben presto ci si deve occupare di come ottimizzare il progetto, se non addirittura di eliminare qualche importante funzione. Le possibili …

Corso Embedded ARM: una shell per il SAMD21

Nella lezione su come collegare un display TFT a colori via SPI al SAMD21 abbiamo visto come aggiungere un'interfaccia molto utile ai nostri progetti. In questa lezione impareremo a collegare una tastiera PS/2 che ci consentirà di inviare caratteri al microcontrollore, similmente a quanto abbiamo fatto fin'ora con la UART, ma svincolandoci dal fatto di avere un PC con un terminale seriale a disposizione. La tastiera PS/2: il protocollo La tastiera impiega tutto il suo tempo a controllare (in inglese scanning, da to scan) la matrice di tasti che la compone. Alla pressione di un tasto la tastiera invia un codice di …

Generazione di forme d’onda con Sintesi Aritmetica

Una tecnica per generare forme d’onda sinusoidali ad elevata precisione a partire da una serie di valori costanti predefiniti e memorizzati nella memoria del microcontrollore ed inviati ad un convertitore DA. La generazione di sinusoidi risulta particolarmente utile nell’uso del DTMF, nella generazione di toni singoli o per la realizzazione di generatori di segnale. LA TECNICA DI SINTESI ARITMETICA La tecnica illustrata in questo articolo è nota come Sintesi Aritmetica in quanto prevede la creazione di una tabella (detta tabella di look-up) di valori corrispondenti all’ampiezza della sinusoide in determinati istanti di tempo. Questa si contrappone alla tecnica di Sintesi Digitale Diretta …

I cristalli al quarzo nel design dei circuiti

Nella progettazione dei circuiti elettronici, nella quasi totalità dei circuiti digitali ma anche in molte applicazioni specifiche di tipo analogiche, è necessario porre particolare attenzione quando si trattano i sistemi di generazione e distribuzione dei segnali di clock. La progettazione di una sorgente di clock passa per la scelta del tipo di oscillatore da utilizzare. Gli oscillatori, nel loro normale funzionamento, sono in grado di generare una predeterminata forma d’onda periodica ad un determinata frequenza. La tecnologia di realizzazione e la tipologia della forma d’onda e della frequenza permettere di classificare questi dispositivi. In questo articolo affronteremo l’aspetto tecnico …

Elettronica News Maggio 2017

Le news di questo mese riguardano importanti aggiornamenti in vari campi dell’elettronica, con un nuovo PMIC della Maxim Integrated che riduce del 50% le dimensioni delle varie soluzioni di alimentazione per le applicazioni indossabili mediche e di fitness. Nuovi aggiornamenti da Sandisk, Infineon e Analog Devices/Linear Technology. Linea FM12 di fusibili da AEM AEM ha annunciato importanti novità per la sua linea FM12 di fusibili, selezionata da European Space Components Coordination (ESCC) per l'inserimento nell'elenco European Preferred Parts List (EPPL). I fusibili della serie FM12, inclusi anche nell'elenco dei prodotti qualificati Defense Logistics Agency Qualified Products List (QPL), sono …

La porta seriale del micro 8051

Come configurare la porta seriale di un 8051 per selezionare una delle quattro modalità di funzionamento. La periferica di comunicazione seriale del microcontrollore 8051 prevede quattro diverse modalità di funzionamento, le più impiegate sono quelle che consentono di utilizzare il baudrate variabile: Modo1, il formato del dato trasmesso è 1bit start + 8bit data +1 bit stop. Modo3, il formato del dato trasmesso è 1bit start + 9bit data +1 bit stop. In entrambi i casi i bit di start e stop sono aggiunti automaticamente dalla periferica rispettivamente  all’inizio e alla fine di ogni byte inviato. Il registro SFR di configurazione della periferica è S0CON (figura 1), i bit TB8 e RB8 di questo registro …

Pilotare un LCD con un microcontrollore PIC

In questo breve articolo illustreremo come interfacciare un display LCD a caratteri 2x16 Hitachi compatibile (l’interfaccia ideata da Hitachi è uno standard di fatto, tanto da essere adottata anche dalle altre case costruttrici) con un controllore PIC Microchip. Del tutto simile è l’interfacciamento di display a caratteri di altre dimensioni (1x16, 2x20, 4x16, 4x20, 2x40 e 4x40) e solo un po’ più complesso quello di LCD grafici (GLCD- Grafic Liquid Crystal Display)  o di LCD touch screen. Interfacciamento tra display LCD 2x16 ed un Controllore PIC Microchip I  dati (caratteri ASCII) e i  comandi del display sono codici ad 8 bit; nonostante tutto gli LCD che integrano  il …

EEMBC Benchmark: la misura delle performance nei processori e microcontrollori

L’Embedded  Microprocessor Benchmark Consortium (EEMBC) ha l'obiettivo di sviluppare misure di riferimento per la stima delle prestazioni di processori e compilatori in applicazioni embedded. Grazie agli sforzi combinati dei suoi membri, i benchmark EEMBC sono presto divenuti uno standard industriale nella stima delle prestazioni dei dispositivi in accordo ad obiettivi ben definiti e criteri application-based. Fin dalla prima certificazione rilasciata (risalente all’Aprile 2000), la valutazione EEMBC ha effettivamente soppiantato il più obsoleto Dhrystone MIPS. A differenza del Dhrystone MIPS che riassume in un unico indice (il MIPS, appunto) le prestazioni di un processore indipendentemente  dall’applicazione, l’EEMBC prevede una serie di …

Il mercato dei microcontrollori, intervista a Lucio Di Jasio EMEA BD team leader @ Microchip

La crescente consapevolezza della gestione intelligente dell'energia, insieme al miglioramento della tecnologia dovrebbero agire come forze trainanti per il mercato dei microcontrollori. L'alto grado di concorrenza nel mercato ha portato anche ad una forte riduzione del prezzo che dovrebbe contribuire alla crescita del mercato. La crescente domanda dell'elettronica per gli usi finali, quali consumer e automotive, dovrebbe agire come forza trainante per la crescita del mercato dei microcontrollori (MCU) classificati sulla base della larghezza del bus interno in tre categorie, che comprendono MCU a 32 bit, 16 bit e 4/8-bit. I microcontrollori a 32-bit dominano il mercato in termini …

Voltage monitor MAX8212

Semplice e versatile IC per il monitoraggio della tensione di alimentazione in circuiti con architettura a microprocessore e non solo. L’integrato che andiamo a presentarvi è un semplice dispositivo per il monitoraggio della tensione di alimentazione di un circuito. Quando si verifica un power-failure, ad esempio per un malfunzionamento dello stadio di alimentazione, oppure in caso di blackout, il cambiamento dell’uscita del dispositivo comunica questo evento ad un microprocessore (o ad un controller dedicato), cosicché la procedura, prevista per queste evenienze, possa essere attivata in tempo. Ecco allora che il microprocessore può decretare l’immediato backup dei dati ed iniziare lo spegnimento del sistema, oppure decidere di commutare la sorgente di …

EOS Top12 – Febbraio 2017

È online EOS Top12 di febbraio, la nostra raccolta dedicata all'Elettronica e alla Tecnologia! Nel numero di questo mese troverete molti articoli e progetti interessanti: il Santo Graal del computing quantistico; il Kit Raspberry Pi; tecnica di guida autonoma su strada sterrata; distribuzioni Linux embedded per architetture ARM; tecnologie medicali; la struttura dei files .BIT; progetti modulari in bandabase per applicazioni wireless; batteria nei dispositivi indossabili; algoritmi di schedulazione nei sistemi real-time; HD Voice; interfaccia smartcard nell’ST7SCR; LTpowerPlanner. Se vi siete persi i numeri precedenti ecco il link. Buona lettura! 1. Il Santo Graal del computing quantistico Gli scienziati …

Misura del valore efficace

Il firmware descritto, abbinato ad un microcontrollore PIC, consente di effettuare la misura del vero valore efficace e del livello in dB di un qualunque segnale analogico. Il valore efficace di una grandezza elettrica in corrente alternata è un parametro che ha lo scopo di semplificare i calcoli ingegneristici (al seguente link un approfondimento sugli errori sperimentali) evitando di analizzare ogni istante infinitesimo che costituisce la forma d’onda. Il valore efficace  di una grandezza equivale a quel valore che in regime di tensione continua svilupperebbe la stessa potenza. Un segnale variabile periodico infatti non ha un valore definito di tensione o corrente come nel caso della corrente continua, ma varia istante per istante. Ad esempio sottoponendo un resistore …

Gestione interrupt del TMR0 e PIC16F84

Un esempio di uso e gestione del timer0 per la realizzazione di un controllore di impulsi. Il listato1 mostra l’utilizzo dell’interrupt del TMR0 per il conteggio di impulsi “squadrati”: il programma è costituito da: una fase di acquisizione degli impulsi, una di conversione del numero binario in una forma adatta alla visualizzazione (sui tre display a sette segmenti) e una fase di visualizzazione. Il numero decimale corrispondente al numero degli impulsi si suppone a tre cifre e il codice binario di ognuna di queste viene salvato in tre registri (UNI, DECI, CENTI); tale codice viene sommato al Program Counter per ottenere, da una tabella,  il codice per il display. La fase di acquisizione mostra l’uso dell’interrupt del …

La distorsione armonica nei data converters

L’interpretazione del segnale prodotto da un data-converter (numerico o analogico a seconda che si tratti di un ADC o di un DAC) può risultare talvolta complicata dalla presenza di una serie di disturbi di entità quasi confrontabile con quella del segnale utile e sovrapposti ad esso. Uno dei fenomeni in grado in determinare tali disturbi è la distorsione armonica, dovuta agli ineliminabili effetti di non linearità introdotti da qualunque circuito analogico subito a monte dell’ADC o subito a valle del DAC. In questo articolo, discutiamo il problema della distorsione armonica nei data-converters: per ciascuno dei casi A/D e D/A, …

Interfaccia smartcard nell’ST7SCR microcontrollore di ST

Il microcontrollore ST7SCR di ST Microelectronics è dotato di un'interfaccia per smartcard e in questo articolo faremo una descrizione dettagliata del suo funzionamento e dei registri coinvolti per poterla utilizzare al meglio. I dispositivi ST7SCR e ST7FSCR sono membri della famiglia di microcontrollori ST7 progettati per applicazioni USB. Tutti i dispositivi sono basati su un common standard di settore Core 8-bit, con un set di istruzioni ampliate. Architettura L’interfaccia smartcard (CRD) del micro ST7SRC è elettricamente compatibile e certificata con gli standards ISO7816, EMV, GSM, WHQL e supporta smartcard tipo memory cards e microprocessor cards. In figura 1 lo schema …