Embedded:

è la categoria relativa all’elettronica embedded. Troverete articoli relativi ai sistemi embedded sia lato hardware che software con particolare riferimento appunto a tutti quei sistemi rivolti ad una specifica applicazione. Tratteremo anche Linux embedded ed altri sistemi operativi leggeri in grado di “girare” su schede embedded a microcontrollore.

Code Composer Studio

Parliamo del ormai diffusissimo ambiente di sviluppo di Texas Instruments. L’obiettivo di questo articolo è fornire una breve presentazione sull’argomento a quanti ancora non conoscono questo praticissimo strumento. A seguire un semplice progetto di esempio basato su microprocessore MSP430. Code Composer Studio è la versione dell’ambiente di sviluppo di Texas Instruments, ora basato sul software framework open source Eclipse. Questo framework è utilizzato da moltissime applicazioni ma originariamente è stato sviluppato proprio per creare ambienti di sviluppo, per questo motivo Texas Instruments, così come molti altri produttori di software embedded, ha deciso di utilizzare Eclipse. Solitamente si abbrevia la nomenclatura del Code …

Serial Port Interface: come utilizzarla con un controllore low-cost

Ci sono dispositivi come i convertitori analogici-digitali della Analog Devices che al power-up del sistema hanno bisogno di essere caricati con una configurazione di parametri. Alcune volte l’applicazione è tale per cui si possono utilizzare i parametri di default caricati sul componente. Altre volte, vuoi perché si hanno situazioni implementative differenti (stesso circuito da utilizzare per sistemi con caratteristiche diverse), vuoi perché c’è l’esigenza di un aggiornamento correttivo della configurazione, i suddetti parametri di default devono essere modificati. A questo scopo, Analog Devices ha inserito sui propri componenti "high speed converter", una porta seriale (SPI- Serial Port Interface)  per il …

Xtrinsic Sensing: La tecnologia di Freescale/NXP

Analizzare il movimento, ecco l’obiettivo che si è posta Freescale/NXP con Xtrinsic Sensing. Freescale, allo scopo di offrire soluzioni innovative nel campo della tecnologia Xtrinsic Sensing, ha realizzato tempo fa una vasta famiglia di accelerometri, inclusa la linea MMA845xQ, dove, oltre a proporre una discreta scelta in fatto di risoluzione (da 10 e fino a 14 bit), sono particolarmente indicate per le applicazioni di tipo embedded; in effetti, permettono di eseguire un’analisi accurata del movimento: cosa senza dubbio apprezzata nelle applicazioni di tipo automotive. Secondo le informazioni offerte dal costruttore, gli accelerometri MMA845xQ permettono di rilevare il movimento in tempo …

PCBWay: il partner ideale per la prototipazione elettronica

La progettazione di schede e dispositivi elettronici impone oggi un'elevata flessibilità e tempi di consegna sempre più ristretti. In un mercato caratterizzato da una forte spinta innovativa, con time-to-market sempre più brevi, è essenziale per i progettisti elettronici contare su servizi di prototipazione e assemblaggio PCB che siano rapidi, affidabili ed economicamente convenienti Introduzione Lo sviluppo di nuove applicazioni elettroniche ha ricevuto negli ultimi anni un notevole impulso, determinato principalmente dalla diffusione di nuove tecnologie come Internet of Things (IoT), Industry 4.0 e dispositivi "smart". Come effetto, abbiamo assistito al proliferare di soluzioni innovative in tutti i principali settori dell'elettronica: …

Le periferiche del micro AVR UC32

Una panoramica delle periferiche presenti a bordo dei microcontrollori Atmel AVR UC32. UC3 è la famiglia di microcontrollori AVR  a  32  bit di Atmel per sistemi ad elevate prestazioni nei più diversi ambiti di applicazione, che vanno dal controllo nei settori industriale ed automotive, alle apparecchiature consumer portatili. I microcontrollori si basano su CPU RISC a 32 bit che dispone di istruzioni dedicate per operazioni DSP, accessi read-modify-write e  manipolazione di  singoli bit, garantendo così una capacità di calcolo di 1.51 DMIPS/MHz. Una matrice di connessione multi-livello controlla lo scambio dati con le periferiche, eventualmente mediante controller DMA a più …

Processore ARM Cortex A9

Il processore ARM Cortex-A9 si distingue per un livello di prestazioni e di efficienza energetica senza precedenti, proponendosi come la soluzione ideale per tutte le applicazioni in cui sono richieste elevate performance, bassi assorbimenti e bassi valori di dissipazione termica. La famiglia di processori ARM Cortex offre una vasta gamma di soluzioni adatte a soddisfare anche le richieste più esigenti in termini di funzionalità e di prestazioni. La famiglia ARM Cortex comprende al suo interno tre serie di processori, tutti basati sull’architettura ARMv7 e sull’implementazione del set di istruzioni Thumb-2. La tecnologia Thumb-2 si basa su un innovativo set di istruzioni in grado di …

Conversione digitale-analogico in PWM

Con la tecnica del PWM si possono ottenere molti risultati. In questo articolo si vedrà come convertire un valore digitale in analogico, ovvero come ottenere un qualsiasi valore di tensione analogica, partendo da un dispositivo digitale. In un convertitore Digitale-Analogico (DAC) si ottiene la conversione di un segnale digitale (rappresentato da un insieme finito di numeri), in una segnale analogico. Di solito tale grandezza è una tensione, da usarsi secondo le più disparate esigenze. Un DAC è contraddistinto da alcune proprietà, come, ad esempio, il valore massimo e minimo di tensione ottenibili e, soprattutto, la risoluzione, ovvero la quantità di bit usati per …

Sicurezza e Android

Sistemi embedded e mobile device: una comune architettura per due particolari segmenti di mercato ognuno con peculiari caratteristiche tecniche ma dove è possibile trovare tutti i problemi noti in fatto di sicurezza. Dalla difficoltà di garantire livelli minimi di protezione con Javascript a quella di realizzare sistemi intrinsecamente sicuri nella compilazione dinamica con JIT compiler, fino ad arrivare a garantire la corretta esecuzione del browser  contenuto  all’interno del modulo WebKit: ecco perché le piattaforme mobile non possono non trascurare gli aspetti legati alla sicurezza e definire, di conseguenza, una corretta impostazione dei livelli minimi. I sistemi embedded sono piattaforme di lavoro costituiti da un processore, …

Lavorazione CNC di materie plastiche

Attualmente nell'industria largamente intesa i dispositivi programmabili, caratterizzati da un'elevata ripetibilità e affidabilità, svolgono un ruolo di elevata importanza. Se si desidera eseguire un elemento di precisione (o una serie di tali elementi), ad esempio un profilo angolare o una boccola, sarà necessario non solo progettarlo con precisione, ma anche eseguirlo. Da qui l'elevata popolarità delle macchine utensili CNC (Computerized Numerical Control), che consentono un'esecuzione rapida e, soprattutto, a buon mercato di questi elementi. Che cos'è la lavorazione CNC Questo termine specifica tutte le operazioni relative alla lavorazione del materiale mediante dispositivi a controllo numerico, che comprendono principalmente fresatrici …

Machine learning e deep learning

Nel senso più fondamentale, Machine Learning (ML) è un modo per implementare l'intelligenza artificiale (AI o IA). Simile all'IA, l'apprendimento automatico è una branca dell'informatica che studia la progettazione di algoritmi che hanno la capacità di apprendere da vari eventi. Algoritmi, set di dati, apprendimento automatico, apprendimento approfondito, calcolo cognitivo, big data e intelligenza artificiale: espressioni IT che hanno assunto il linguaggio di molte realtà industriali. ML è una delle tecnologie più eccitanti che si sarebbero mai potute incontrare. Come è evidente dal nome, dà al computer ciò che lo rende più simile agli umani: la capacità di apprendere. …

Audio facile con il SOMO-14D

Riprodurre file audio non è mai stato così facile con il SOMO-14D. Dotare il proprio sistema embedded di funzionalità audio può spesso rappresentare un’interessante possibilità. Non sempre tuttavia, soprattutto nel caso delle soluzioni più semplici ed economiche, il microcontrollore a bordo dispone delle periferiche necessarie per la memorizzazione e la riproduzione dei contenuti audio. In questo caso può risultare utile impiegare dei moduli standard di espansione. Uno di questi è il SOMO-14D, commercializzato dalla 4D System. Il dispositivo è ideale per applicazioni a basso costo nel settore, ad esempio, dell’automazione domestica, dei sistemi di allarme o dei navigatori GPS o …

La Cpu V850: architettura e prestazioni

Caratteristiche, architettura e prestazioni della CPU V850 di Renesas, la quarta generazione di microcontrollori per applicazioni automotive basati su  CPU V850. Realizzati in tecnologia flash MONOS a 90 nm (Metal-Oxide-NitrideOxide-Silicon), i dispositivi garantiscono una capacità di calcolo di 2.5 DMIPS/MHz e supportano una massima frequenza di clock di 200 MHz. La famiglia guarda al segmento di dispositivi high-end (figura 1) ed estende il portafoglio di soluzioni Renesas basate su CPU V850, che già includeva soluzioni di fascia bassa e ASSP (Application Specific Standard Product). In generale, i microcontrollori delle serie V850 si caratterizzano per le elevate prestazioni nel segmento di riferimento, bassa …

Piattaforma low-cost con PLD

La progettazione di una piattaforma hardware deve considerare parecchi aspetti e il gestore della piattaforma deve essere scelto con cura. Sempre più piattaforme utilizzano delle PLD per la gestione, il perché è facile da capire. Il controllo della sequenza di powerup, le espansioni dei pin di input/output, le traslazioni di livello e gli adattamenti di interfaccia, sono solo alcune, ma tra le più diffuse, funzioni che trovano applicazione nei dispositivi per il mercato telecom, per i server e per le applicazioni industriali. Per queste e altre applicazioni, i progettisti si stanno sempre di più orientando all’utilizzo di logiche programmabili non volatili (PLD) per i …

Memory barrier, come ottimizzare gli accessi in memoria nei processori Cortex-M

Nei vecchi processori ARM l'esecuzione di un determinato programma combaciava esattamente con l'effettivo ordine delle istruzioni, un simile comportamento per quanto possa sembrare lineare e semplice non sempre ottimizzava i tempi di esecuzione. Se per esempio si effettuava una LOAD da una locazione di memoria non presente nella cache, recuperare i dati dalla memoria poteva richiedere diversi cicli d'istruzione, i nuovi processori ottimizzano così l'esecuzione proseguendo con le istruzioni in caso non dipendano dalla precedente. Questa modalità di esecuzione chiamata out-of-order execution  può portare ad errori indesiderati nei processori moderni, per cui è necessario modificare il codice per ripristinare l'esecuzione …

Machine Learning con Python: introduzione al progetto

Negli ultimi anni il linguaggio di programmazione Python ha visto un sempre maggiore utilizzo nella realizzazione di progetti legati al Machine Learning. L'apprendimento automatico consiste nell'utilizzare i dati per fare in modo che una macchina prenda decisioni intelligenti. Ad esempio, è possibile creare un algoritmo di rilevamento dello spam in cui l'apprendimento delle regole dai dati avviene esaminando le mail precedenti. In questo articolo andremo a descrivere la prima parte della realizzazione passo passo di un progetto di machine learning utilizzando il linguaggio di programmazione Python. Introduzione L'apprendimento automatico non è altro che riconoscere i modelli nei dati. Sviluppare procedure …

Veicoli a guida autonoma

Il veicolo autonomo è destinato a cambiare la vita quanto l'invenzione dell'autoveicolo stesso. Le città moderne sono state modellate in gran parte dalla mobilità che viene raggiunta attraverso veicoli a motore, fornendo servizi di trasporto a persone e merci allo stesso modo e supportate dalle principali reti stradali in tutto il mondo. I progressi nella comunicazione, nei controlli e nei sistemi integrati ora spianano la strada alla rete di veicoli intelligenti. Un'auto è ora una formidabile piattaforma di sensori che assorbe le informazioni dall'ambiente e altre auto che la alimentano per assisterla nella navigazione sicura, nel controllo dell'inquinamento e …

Le nuove frontiere dell’audio digitale

Un accordo di cooperazione tra Atmel e la società danese Bang & Olufsen ICEpower, specializzata nella realizzazione di amplificatori in classe D, ha portato all’ingegnerizzazione di un progetto di riferimento destinato ai progettisti impegnati nell’assemblaggio del puzzle dell’audio digitale. L'introduzione, avvenuta 130 anni fa, del fonografo di Edison che utilizzava cilindri incisi, ha segnato l’inizio dell’era della distribuzione dell’intrattenimento su un mezzo fisico. Inutile a dirsi, quest’epoca sta iniziando a concludersi nel momento in cui la distribuzione e la riproduzione di brani musicale attraverso dispositivi portatili e connessi in rete stanno divenendo sempre più convenienti sia per i consumatori sia per i …

Programmare in real-time con VisualRTXC

VisualRTXC di Quadros system Inc. è un tools di sviluppo versatile e semplice da utilizzare, non richiede una conoscenza approfondita di programmazione, e lascia libertà d’utilizzo da parte del programmatore. In quest’articolo ne sveleremo pregi e difetti, cercando di gettare le basi per un utilizzo senza problematiche. Ogni progettista o hobbista che si rispetti, sa benissimo che con l’implementazione nel proprio circuito di un dispositivo programmabile, oltre ad accrescerne le potenzialità, ne aumenta anche le possibilità di errore e la complessità stessa. Lo schema elettrico risulta più snello e comprensibile, ma a fronte di qualche migliaia di righe di codice, si …

Lo stack TCP/IP di Microchip

Microchip è sicuramente molto famosa per via dei processori della serie PIC e dei suoi moduli software che distribuisce e di questi, certamente, lo stack TCP/IP è uno degli oggetti più interessanti. Lo Stack TCP/IP di casa Microchip si compone di una suite di programmi e codice sorgente in grado di offrire servizi per applicazioni basate sul protocollo TCP/IP, ovvero HTTP Server, mail client con il protocollo SMTP e, successivamente, con SNMP. A questo proposito la tabella 2 pone in evidenza i diversi RFC applicabili. L’approccio di Microchip è davvero interessante, tanto da favorire la portabilità delle applicazioni scritte per differenti piattaforme. In …

Programmare un MSP430 via JTAG

Una semplice discussione sull’interfaccia JTAG della famiglia MSP430 di Texas Instruments, con tanto di analisi del protocollo di comunicazione e introduzione al progetto “Replicator” che permette, tramite un MSP430, di programmare un altro MSP430 attraverso la JTAG. Ormai l’interfaccia JTAG è diventata l’interfaccia principe nelle applicazione di programmazione e debug nel mondo embedded. Ormai quasi tutti i microcontrollori, partendo da quelli di fascia alta per finire con quelli di fascia bassa, sono equipaggiati con la JTAG. Il microcontrollore MSP430 di Texas Instruments non è da meno. Attraverso la JTAG è possibile accedere alla memoria flash interna per eseguire operazioni di cancellazione, programmazione e verifica. Negli ultimi anni due …

Una libreria per applicazioni touch-sensing

Come trasformare le MCU S08 e V1 ColdFire di Freescale in sensori touch-sensing. Di recente, il mercato ha visto una crescente diffusione delle soluzioni touch sensing, non soltanto in ambito consumer ma anche nel settore industriale. E’ sempre più frequente trovare dispositivi con tastiere, rotary switch o slider di  tipo capacitivo piuttosto che meccanico. Tra i vantaggi principali delle tecnologie touch sensing vi sono una riduzione dei costi di progetto e di materiale, la maggiore affidabilità (è possibile, ad esempio, sigillare l’apparecchiatura dall’ambiente esterno in presenza di condizioni ostili), oltre ad una migliore facilità di utilizzo ed una attrattiva maggiore per …

Interfaccia SCT per camere a 8 bit

Acquisire immagini attraverso videocamere è al giorno d'oggi cosa comune e essenziale in determinati tipi di applicazioni. Riuscire a progettare un'interfaccia di acquisizione ad alte prestazioni, caratterizzata anche da un basso consumo, è ciò a cui si punta per ottimizzare l'efficienza del dispositivo. Attraverso un'interfaccia di tipo SCT (State Configurable Timer) si riesce ad ottenerne una molto potente caratterizzata da 16 eventi, 32 stati, 8 input, 16 output con la capacità di acquisire e visualizzare video; questa interfaccia riesce, quindi, facilmente a acquisire ed esportare complesse forme d'onda in parallelo, ma per fare ciò serve anche un processore in grado …

I.B.I.S.

Non si intende parlare qui dell’animale sacro agli Antichi Egizi, naturalmente, ma di uno strumento per verificare la Signal Integrity dei nostri progetti senza costruire prototipi. IBIS è infatti l’acronimo di I/O Buffer Information Specification. Nella vastissima gamma di Note Tecniche,  Application  Notes, Whitepapers rilasciate ogni mese da tutti i produttori di componenti elettronici, strumentazione e sistemi, si nascondono a volte piccole “gemme”, documenti preziosi per la loro chiarezza o per il contenuto particolarmente interessante. Certo, lo scopo è sempre contribuire, più o meno direttamente, alla vendita dei propri componenti, ma non di rado il valore formativo ed informativo di alcuni di questi componenti va …

Automazione industriale: in attesa del 5G

Da molti anni argomento tra i più "caldi" nel settore delle telecomunicazioni, il 5G è in dirittura d'arrivo: già nel 2018 alcuni operatori statunitensi come Verizon e AT&T hanno avviato le prime reti commerciali 5G, mentre la Corea del Sud ha attivato i primi servizi nel 2019 e la maggior parte degli operatori europei inizierà a proporre le proprie offerte a partire dal 2020. Introduzione Anche se con enfasi forse eccessiva alcuni commentatori prevedono che sarà uno dei più importanti sviluppi della storia dell'umanità, il 5G avrà comunque un profondo impatto su molti aspetti della vita quotidiana, consentendo lo …

Smart city e automazione

L'automazione è un tema chiave emergente per le aziende di ogni tipo. Oggi assistiamo a un'ondata di trasformazioni digitali che investono industrie come la produzione, l'energia, i trasporti e altro ancora. Tecnologie avanzate come l'intelligenza artificiale (AI), il deep learning e le comunicazioni machine-to-machine promettono di trasformare l'ambiente industriale. Mentre le città sembrano diventare più intelligenti, molti stanno esplorando come possono trarre vantaggio da queste stesse funzionalità per gestire al meglio le proprie risorse e operazioni. Ad esempio: come possono applicare al meglio i principi alla base dell'automazione digitale e della connettività onnipresente dell'internet degli oggetti (IoT) per affrontare …