Programmazione:

in questa categoria ci sono articoli ed applicazioni di informatica. Vengono trattati tutti i linguaggi di programmazione, come ad esempio il Python ed il linguaggio C, ma anche Assembler/Assembly.

Conversione da UART a SPI con FPGA

Molto spesso è necessario poter utilizzare direttamente componenti che abbiano un’interfaccia di tipo SPI come sistema di comunicazione. L’articolo evidenzia come sia possibile una comunicazione diretta su questi componenti, utilizzando la classica seriale RS232 senza uso di microprocessori e relativi FW, ma integrando il  tutto in una piccola ed economica FPGA. L’articolo fornisce i dettagli per l’integrazione di un sistema …

Attenzione ai puntatori a funzione

Perché dovremmo preoccuparci di questo tema in un sistema embedded? La problematica della sicurezza e, di riflesso, quella dei puntatori a funzioni rientra sicuramente nella fattispecie dell’affidabilità del codice e per un sistema embedded questa necessità diventa prioritaria per via delle implicazioni che ne conseguono. Il tema di questo articolo è davvero molto vasto. L’affidabilità di un sistema software …

Sistemi di sviluppo per ARM

Esistono diversi ambienti di sviluppo basati sul microcontrollore ARM, ognuno con proprie caratteristiche e specifici strumenti di lavoro, ma tutti condividono, le stesse funzionalità, magari svolte in modo diverso. IAR Embedded Workbench per ARM o mVision della Keil sono degli ambienti di sviluppo di tipo IDE realizzati per permettere a un progettista software lo sviluppo e …

L’arte di manipolare i bit

Gli operatori orientati ai bit sono sicuramente uno degli aspetti più rilevanti nei sistemi embedded; infatti, in questo modo è possibile accedere, direttamente, ai singoli bit dei dispositivi hardware. É universalmente riconosciuto, poi, che questi operatori non possono essere applicati a variabili di tipo float o double. Le informazioni, siano essi concetti astratti o meno, sono …

Meglio BASIC o C?

I due linguaggi per la programmazione più diffusi al mondo sono il Basic ed il C. Esaminiamo pregi e difetti di entrambi al fine di scegliere ed utilizzare quello più adatto alle proprie esigenze. Non esiste un linguaggio di programmazione “perfetto” in assoluto, quello che elimina tutto i problemi legati alla velocità, …

C e Assembly: due mondi a confronto in ambiente AVR

Il linguaggio assembly è uno strumento tipico per programmare sistemi embedded di piccola fascia. Oggi, con l’efficienza dei compilatori, è fortemente sconsigliato utilizzarlo; infatti, solo un linguaggio strutturato, come il C, rende la nostra architettura più versatile e manutenibile. Da diverso tempo i sistemi embedded di piccola fascia sono programmati utilizzando l’ormai classico linguaggio C, magari utilizzando qualche …

Sistemi di sviluppo per LPC2000

Esistono diverse proposte commerciali che permettono di sviluppare codice in ambiente ARM, in questo articolo è presentato l’ambiente MDK-ARM che ha il pregio di fornire una serie di utility attraverso un unico workbench. La proposta MDK-ARM (Keil Microcontroller development kit) è un ambiente completo che comprende, oltre ai tool di debug (uVision), la cross …

SwiftX: Un cross compiler per sistemi embedded

Scopriamo in questo articolo il cross compilatore SwiftX, un sistema di sviluppo interattivo basato sul linguaggio Forth in grado di supportare un’ampia gamma di microcontrollori. Il cross compilatore SwiftX è prodotto dalla società americana FORTH Inc. (figura 1), la più grande e referenziata azienda in grado di fornire soluzioni e sistemi basati …

Conversioni float-string in AVR

La libreria di conversione in ambiente AVR che presenteremo in questo articolo è ready-to-run per essere utilizzata in applicazioni embedded e dispone di numerosi aspetti che la rendono davvero interessante. Questa libreria di conversione, da rappresentazioni in virgola mobile a stringa, è stata studiata per sistemi embedded con ridotte dimensioni di memoria: si quantifica …

Tutorial UML: approfondimento sulla generazione del codice

Nella scorsa punta si è iniziato ad analizzare come la rappresentazione UML sia applicata ad un caso pratico di un progetto per lo sviluppo di un generico sistema. Continuiamo in quest'ultima puntata a descriverne i tali passi fondamentali. Tutti i diagrammi e le relazioni descritti nelle precedenti puntate del corso hanno un ben preciso …

Tecniche di Soft Computing nei Sistemi Embedded

Da diversi anni, le cosiddette tecniche soft-computing si stanno affiancando ai più tradizionali approcci di programmazione. La loro diffusione in ambito embedded, sta via via crescendo in conseguenza dei notevoli risultati ottenuti anche sul campo. La progettazione dei sistemi embedded è ormai molto diversa dalla programmazione dei calcolatori. I programmatori per PC sono abituati a standard …

Previsioni di affidabilità e validità delle raccolte dati

La valutazione dell’affidabilità di un sistema a partire dai suoi componenti o dal verificarsi dei guasti è una fase importante dell’analisi dell’affidabilità. Tale aspetto sta assumendo un rilievo tale da impiegare nelle varie realtà aziendali unità operative dedite alla modellazione dei sistemi in fase di sviluppo secondo vari approcci. In questo articolo ci occuperemo principalmente d’introdurre l’argomento ‘previsioni affidabilistiche’, di cercare di capire l’utilizzo che si …

Tutorial UML – Generazione del codice

Nella scorsa puntata è stato introdotto l’uso di un comodo strumento open-source per la realizzazione di diagrammi UML, è stato mostrato come creare gli elementi base e come interconnetterli tra loro. Continuiamo in questa analisi per mostrare come creare rappresentazioni UML più complesse e come generare codice dal relativo diagramma. Si analizzerà inoltre come utilizzare nella pratica gli strumenti finora forniti. Nella …
Abbonati ora!