linguaggi di programmazione:
Non si vedeva "l'ora" di presentare questo terzo articolo del corso avanzato sul linguaggio C per Raspberry Pi. Esso, difatti, tratta di un importante argomento: come gestire la data e l'ora con i propri programmi. L'argomento è collocato esattamente a …
Attualmente ci sono molte strumentazioni dotati di porta seriale. Come possiamo comunicare con loro in un modo semplice? La risposta è Labview. In questo articolo analizzeremo un semplice programma che ci permetterà di comunicare con il dispositivo via RS232. In un prossimo articolo vedremo come comunicare da remoto con la porta seriale. Innanzituto vediamo che cosè la …
La U8g2 è una libreria pensata per i dispositivi embedded. Essa supporta i display monocromatici OLEDs e LCDs. Include molti comandi per il tracciamento di figure 2D primitive (linea, cerchio e rettangolo), supporta molti font per la scrittura del testo, …
Nel 2017 i crimini informatici sono aumentati in tutto il mondo colpendo oltre un miliardo di persone e causando danni per oltre 500 miliardi di dollari e non esistono previsioni migliori per il 2018. Una crescita esponenziale degli ultimi anni …
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 …
Nella precedente puntata sono stati descritti tutti i building-block utilizzati in tutti i diagrammi UML. Noti gli oggetti e le relazioni tra di essi si può rappresentare un problema nella maniera più appropriata. In questa terza punta sarà mostrato come utilizzare un software, StarUML, per la generazione di diagramma UML in maniera semplice ed intuitiva. StarUML …
Interfacce, canali e porte sono i metodi in SystemC per la connessione dei moduli. Nella precedente puntata abbiamo presentato una introduzione a questi concetti. In questo numero approfondiremo i canali primitivi di tipo evaluate-update e vedremo come creare canali gerarchici. Uno degli aspetti più complessi della modellizzazione hardware è la descrizione della concorrenza degli eventi. L’esempio …
Quali sono le informazioni che bisogna conoscere per gestire correttamente una ISR in un MPC555? Questo articolo fornirà elementi utili per gestire un'eccezione su MPC555. Il componente siglato come MPC555 appartiene alla famiglia Powerpc™ e contiene al suo interno timers e altre periferiche che, se opportunamente programmate, possono generare interrupts. L’architettura …
Il linguaggio SystemC supporta in maniera nativa una descrizione delle architetture di tipo gerarchico basata sul concetto di modulo. In tutte le applicazioni, tale approccio semplifica la comprensibilità del progetto, facilita il design partitioning, consente il riutilizzo di componenti, riduce i tempi verifica; richiede …
La crescente capacità logica dei dispostivi programmabili consente oggi di realizzare complessi System-On-Chip che includono le principali funzionalità di sistema in un unico dispositivo. Tuttavia, unitamente alla complessità del sistema, crescono le problematiche legate alla fase di verifica del progetto che tendono ad incidere negativamente …
Il mercato dei dispositivi integrati è ormai da alcuni anni fortemente condizionato dal costante tentativo di ridurre il time-to-market, unica soluzione che consenta di contenere i costi di sviluppo, incrementare i profitti, mantenere competitività. D’altro canto, i continui progressi tecnologici, ancora oggi in accordo alla legge di …
Il dispositivo jtag dello sharc è un potente strumento di debug e di verifica. in questo articolo vedremo anche una piccola panoramica dei vari sistemi di debug disponibili per il testing di un’applicazione embedded. Prima di iniziare quest’articolo è buona norma …
Quali sono le considerazioni da tener presenti per sviluppare un kernel per la gestione di un ambiente multithread? in questo articolo vediamo quali sono le caratteristiche di minimal multithread (mmt), il nostro kernel didattico. In questo articolo vedremo come realizzare un …
L’utilizzo del meccanismo di pipeline permette al microprocessore di incrementare la sua velocità d’elaborazione. Questo incremento prestazionale fornisce quelle chiavi di lettura per convincere il progettista per l’uso di architetture del genere per le proprie realizzazioni. Negli ultimi anni l’evoluzione …
Trascurare gli aspetti di sicurezza e di robustezza del codice sviluppato in linguaggio C non è mai consigliato. É dimostrato che malfunzionamenti dovuti alla scarsa sicurezza possono pregiudicare l'affidabilità del sistema stesso. I difetti del software sono la primaria causa della …
Descript è un tool tutto italiano per il controllo e la manutenzione di schede embedded. E' un ottimo strumento per scrivere routine di test e fare sessioni di debug on board liberando il progettista hardware dalla necessità di conoscere un …
Quando si affronta la progettazione di un sistema embedded, uno dei limiti è quello di non riuscire a prevedere in maniera precisa il numero di pin del micro che saranno necessari. Ecco come risolvere questo problema ricorrendo all’uso dei port expander. Nella progettazione di …
Qualsiasi programmatore di sistemi dedicati che utilizza soluzioni basate su System-onChips (SoCs) ha la necessità di utilizzare codice oggetto che coniuga aspetti di safety con quelli d’efficienza: il codice deve occupare poco spazio, deve garantire prestazioni paragonabili a quella d’esecuzione …
Ada è un linguaggio di programmazione nato per volontà del DoD (il ministero della difesa degli Stati Uniti) per impieghi su sistemi embedded in applicazioni di tipo militare. In seguito è stato utilizzato in svariati campi quali avionica civile, nei …
L'Assembly è il linguaggio più difficile che esista e, a ragione, i programmatori hanno un po' di timore nell'impararlo. Per la codifica di semplici azioni occorre scrivere una notevole quantità di codice. Ma la velocità è il suo punto di …