"Ottieni quello per cui paghi" non è sempre vero. Quando si progetta un'interfaccia utente grafica (GUI) e si produce un'interfaccia uomo-macchina (HMI), l'obiettivo è sempre ottenere Scopri di più di quanto paghi. I sistemi basati su unità di microcontrollore (MCU) sono meno complessi e costosi dei sistemi su chip (SoC) perché offrono meno funzionalità. Tuttavia, ciò non significa sempre sacrificare la qualità per ridurre i costi ed è del tutto possibile fornire un'interfaccia grafica del calibro di uno smartphone su hardware poco costoso.

Le unità a microcontrollore mantengono bassi i costi della distinta base (BOM), offrono dimensioni relativamente ridotte e hanno minori requisiti di potenza e risorse. Nonostante la relativa semplicità degli MCU rispetto ai SoC (e talvolta proprio per questo), i team di prodotto possono comunque ottenere un'interfaccia utente (UI), un'esperienza utente (UX) e una grafica eccellenti con gli MCU.

Considerazioni e sfide

L'obiettivo più rilevante è in genere quello di fornire una GUI attraente, brillante e moderna su un MCU. Poiché gli MCU sono più semplici dal punto di vista dell'architettura rispetto a un SoC, offrono meno risorse interne. La sfida consiste nello sfruttare al massimo le limitate risorse di un MCU per sviluppare un utile HMI. L'identificazione e il superamento degli ostacoli è reso possibile dalla raccolta ponderata dei requisiti e dalla mappatura di tali requisiti alle risorse MCU disponibili.

I costi di ingegneria, produzione e manutenzione sono considerazioni chiave all'inizio della fase di raccolta dei requisiti, così come durante l'intero processo di sviluppo della GUI. Il microcontrollore stesso è una parte significativa del costo BOM, ma rispondere alle seguenti domande aiuterà i team a navigare nella complessità di una GUI incorporata:

  • Di quante schermate GUI e modelli di schermate univoci abbiamo bisogno?
  • Di quante immagini abbiamo bisogno e in quali tipi di file?
  • Di quali lingue e caratteri abbiamo bisogno per l'internazionalizzazione?
  • Quali animazioni o transizioni dobbiamo supportare?
  • Con che tipo di display stiamo lavorando (in termini di larghezza, altezza, pixel e profondità del colore)?
  • Abbiamo bisogno di fornire aggiornamenti o programmazione over-the-air (OTA)?
  • Come e dove memorizzeremo l'applicazione, le risorse e i dati?

Con questo elenco, puoi derivare un elenco di requisiti per la tua GUI che devono quindi essere mappati sulle risorse disponibili dell'MCU.

Risolvere i problemi di memoria che affliggono i progetti di GUI basati su MCU può essere una sfida. L'equilibrio tra le risorse mappate su Flash e la RAM consumata in fase di esecuzione influirà sulla gestione delle risorse e sulle prestazioni della GUI. La memoria flash è ottima per i contenuti che non devono essere aggiornati, come il codice e i dati costanti. La RAM è ideale per i contenuti dinamici, in particolare i contenuti a cui è necessario accedere, leggere e scrivere frequentemente. Sfortunatamente, la RAM è più costosa e richiede un'alimentazione continua.

Le prestazioni e la velocità di accesso sono fondamentali per la qualità complessiva dell'interfaccia utente e dell'esperienza utente. di Altia Architettura di generazione del codice DeepScreen aiuta a ridimensionare i frame buffer ea controllare il formato del colore delle risorse grafiche per ridurre la larghezza di banda della memoria. Altia DeepScreen supporta i livelli hardware quando disponibili sull'hardware, quindi è possibile effettuare aggiornamenti sui livelli di contenuto dinamico mantenendo statica la grafica di altri livelli, riducendo ulteriormente il carico del sistema come l'impronta di memoria dinamica.

Le soluzioni di generazione automatica del codice come Altia DeepScreen offrono vantaggi rispetto alla codifica manuale, che spesso diventa un incubo durante la manutenzione di una GUI.

Vantaggi dell'utilizzo di Altia con le GUI dell'unità microcontrollore

I team possono utilizzare l'editor della GUI di Altia e il processo di sviluppo basato su modelli per migliorare la collaborazione. Una volta che il design sembra buono, la generazione del codice lo dà vita quasi istantaneamente. Oltre al miglioramento della collaborazione, ciò produce tre vantaggi principali:

  1. Ottimizzazione della dimensione del codice: ottenere il codice più piccolo possibile aiuta a rimanere entro i confini delle limitate risorse di memoria di un MCU. Ad esempio, ridurre la memoria aiuta a consumare meno energia per prolungare la durata della batteria il più a lungo possibile.
  2. Costi di produzione e costi di manutenzione: semplificare i requisiti di memoria e alimentazione aiuta a mantenere basso il costo della distinta base. Layout più semplici dei circuiti stampati (PCB) potrebbero ridurre i costi quando si lavora con i fornitori.
  3. Ottimizzazione della velocità: una GUI lenta è una cattiva GUI e un'elevata latenza può devastare l'UX. La combinazione di un software GUI ben bilanciato con un codice altamente performante e risorse grafiche ottimizzate è la chiave per fare un'ottima prima impressione su clienti e utenti.

Questi sono i tre motivi principali per cui i team si affidano ad Altia per aiutarli a sviluppare GUI rivoluzionarie. Ad esempio, il team di Tandem Diabetes Care ha sviluppato un software per fornire una GUI touchscreen a colori che funziona per una settimana con una piccola batteria ricaricabile. Il team di Cypress (ora Infineon) ha portato con successo una ricca grafica ai display automobilistici con Supporto per la generazione di codice HMI per MCU. L'implementazione di GUI per GUI basate su unità di microcontrollore fa parte del DNA di Altia. Questo è il motivo per cui la nostra soluzione è la scelta migliore per le GUI integrate per display di tutti i tipi, dagli MCU economici ai SoC all'avanguardia e ad alta potenza, tutti con una soluzione di progettazione comune.

Perché Altia per GUI integrate su unità a microcontrollore?

Altia è una soluzione grafica concept-to-code con tutto il necessario per progettare, sviluppare e distribuire GUI su MCU. Puoi utilizzare il tuo strumento grafico preferito per creare opere d'arte. Quindi utilizza il software di sviluppo della GUI di Altia per dare vita alla tua interfaccia utente su una distribuzione bare metal o qualsiasi sistema operativo compatibile con MCU (come FreeRTOS) con pochi clic. Il flusso di lavoro basato su modello è abbastanza semplice da consentire una rapida prototipazione, test utente continui e iterazioni rapide per migliorare l'esperienza utente.

Architettura orientata all'MCU

Poiché il generatore di codice di Altia emette codice ottimizzato, tutto è abbastanza leggero per la tua unità microcontrollore. Puoi persino testare le prestazioni durante lo sviluppo perché Altia DeepScreen genera automaticamente il codice. La nostra soluzione DeepScreen è specificamente progettata per sfruttare al massimo le funzionalità dell'hardware selezionato (inclusi gli MCU con risorse limitate), rendendo tutto questo hardware (e altro) lavora in modo più intelligente.

Versatilità

Continuiamo ad estendere la gamma di supporto per la generazione del codice a diversi Tipi di of MCU per fornire opzioni per superare una carenza di chip o altre sfide della catena di fornitura. Se devi fare un pivot o persino creare una GUI per lavorare su più configurazioni hardware, DeepScreen ti offre la flessibilità per farlo. Il tuo modello di GUI è abbastanza portatile da passare dall'unità microcontrollore all'unità microprocessore o viceversa per un prodotto nuovo o di nuova generazione.

Potenza

Altia Tool Chain è compatibile con la gamma di applicazioni grafiche integrate basate su MCU. La missione è fornire la GUI con le migliori prestazioni possibili sull'hardware a basso costo. Detto questo, l'editor software e il generatore di codice sono abbastanza avanzati da fornire una grafica avanzata con una grafica sofisticata mentre le GPU 3D si fanno strada in MPU più piccole ed economiche o quando un SoC all'avanguardia attiva un'applicazione GUI.

Altia si occupa di aiutare le aziende a ottenere GUI ad alto impatto su processori con qualsiasi livello di potenza. Molti team di prodotto si rivolgono a noi perché non hanno mai preso in considerazione le GUI basate su MCU o non hanno mai selezionato l'hardware. In quei casi, il nostro Servizi Kickstart aiutare i team a selezionare l'hardware e ottimizzare la grafica di conseguenza.

Il software e i servizi di Altia sono progettati per supportare ogni fase del percorso del prodotto, dall'ideazione alla produzione. Contattaci oggi stesso per saperne di più o INIZIA.