Cea mai recentă gamă de microcontrolere PIC de la Microchip integrează un subsistem grafic complet, permiţând o implementare simplă de interfaţă grafică cu utilizatorul.
de Lee K. Koh, AMAD Marketing, Microchip Technology Inc.
Fiecare nouă generaţie de dispozitive integrate, precum microcontrolerele, introduc funcţionalităţi mai mari însoţite de o creştere a complexităţii. Pentru multe circuite integrate această complexitate este adânc implementată; se realizează funcţii specifice ca parte a soluţiei globale. Această tendinţă de creştere a funcţionalităţii şi a complexităţii poate fi de asemenea văzută la un nivel mai înalt, în aplicaţiile de zi cu zi precum în cazul produselor de uz casnic şi a celor din industrie.
Dorinţa de a furniza metode mai eficiente şi intuitive de accesare şi control a acestei funcţionalităţi crescute, creează necesitatea pentru interfeţe mai avansate. Astăzi, majoritatea interfeţelor cu utilizatorul sunt grafice, pentru că ele oferă o mai mare flexibilitate pentru particularizare, acces mai bun la meniuri contextuale şi capabilitatea de adaptare la un număr foarte mare de cazuri particulare.
Spre deosebire de un panou cu funcţii fixe, o singură interfaţă grafică cu utilizatorul poate oferi acces la o cantitate aproape nelimitată de funcţionalităţi. Ca exemplu, acest scenariu conduce la cerinţe de panouri de control mai sofisticate, după cum tot mai multe aparate electrocasnice oferă funcţionalităţi sporite, vor creşte cerinţele de metode de control mai sofisticat, ceea ce va conduce fără dubii la utilizarea mai puternică a interfeţelor grafice GUI în detrimentul butoanelor electromecanice cu funcţii fixe. Acesta este numai un exemplu asupra modului în care GUI ajută la definirea căilor de interacţionare cu tehnologia secolului XXI.
Eficienţa oricărui GUI este puternic dependentă de tehnologia de display utilizată şi câtă vreme migrarea de la ecranele segmentate monocromatice cu LED-uri la LCD-uri color apare ca fiind o provocare, există soluţii în această privinţă în ambele planuri: comercial şi tehnic. Scăderea preţurilor în tehnologia LCD înseamnă că este acum viabilă din punct de vedere comercial implementarea de LCD-uri medii şi mari în multe aplicaţii pentru care în trecut nu părea posibil acest lucru. Costul display-urilor este dependent de multe lucruri: tehnologia LCD utilizată, rezoluţia şi dimensiunea sa totală, precum şi integrarea de caracteristici gen ecran tactil şi controlere pentru ecrane.
Fiecare ecran LCD necesită un controler, multe dintre acestea fiind integrate pe display, în special pe panouri mici de 2.8” sau mai mici. Majoritatea ecranelor medii şi mari nu oferă această integrare, bazându-se pe un dispozitiv extern ca şi controler pentru display. Din aceasta rezultă un cost suplimentar al sistemului, care creşte şi mai mult atunci când este luată în calcul şi memoria RAM necesară ca buffer de cadre. Costul şi complexitatea implementării subsistemului display poate fi în unele cazuri un supliment costisitor.
O nouă familie de microcontrolere PIC de la Microchip porneşte de la acest fapt furnizând o soluţie economică. Familia PIC24FJ DA integrează atât un controler de display, cât şi un buffer de cadre, împreună cu alte caracteristici care se adresează aplicaţiilor comerciale cu GUI. Mai important, noua familie de dispozitive oferă o platformă tehnic capabilă de a respecta cerinţele multor cazuri particulare în care GUI este utilizat pentru a creşte atractivitatea şi utilitatea pentru aplicaţii finale.
Familia PIC24FJ DA implementează trei caracteristici nemaiîntâlnite pe nici un dispozitiv PIC: 3 unităţi hardware de accelerare grafică, oferind o transmitere grafică rapidă şi decomprimarea rapidă de date/imagine; o memorie RAM mare pe cip ce poate fi configurată ca buffer de cadre flexibil cu o tabelă de căutare a culorilor, şi un controler de display capabil de interfaţare cu aproape orice ecran TFT, STN Mono sau STN color. Integrarea a 96kbyte de RAM şi a unui tabel de căutare a culorii oferă un suport intern de buffer de cadre pentru ecrane cu rezoluţie până la QVGA (320 × 240). Tabelul de căutare a culorii, care este o memorie integrată de 256 × 16-bit pe intrare, indexează culorile memorate în buffer. Această caracteristică permite apariţia simultană pe ecran a până la 256 de valori dintr-un posibil de 65536 culori (16 bpp), fără componente RAM suplimentare externe. Abilitatea de a compila şi de a comuta între paletele de culori este semnificativă, ea ajutând la crearea unei interfeţe cu utilizatorul mai performante fără cerinţe masive de memorie. După cum se poate observa în figura 1, imaginile ce pot fi obţinute utilizând paleta de culori de 256 16bpp, pot răspunde cerinţelor majorităţii aplicaţiilor.
După cum se arată în Tabelul 1, dimensiunea bufferului necesar este dependentă de rezoluţia ecranului şi de adâncimea de culoare, ceea ce înseamnă că familia PIC24FJ DA poate suporta o gamă largă de rezoluţii de ecran la diferite adâncimi de culoare.
Dacă este necesar un display mai mare, la o adâncime de culoare mai mare, familia PIC24FJ DA este capabilă de a-şi extinde buffer-ul, lucrând cu memoria RAM internă şi cu un dispozitiv de memorie externă; putând suporta chiar şi rezoluţii VGA pe cip, necesitatea pentru memorie RAM externă este excepţia, mai degrabă decât uzualul.
Flexibilitatea familiei PIC24FJ DA înseamnă că ea poate suporta ecrane mai mici cu culori complete 64k (16bpp), fără memorie adiţională. Alternativ, atunci când se utilizează ecrane cu mai puţine culori sau chiar 2 (ecrane monocrome), există membri ai familiei care integrează mai puţină memorie RAM, conducând la economii substanţiale.
O parte semnificativă în dezvoltarea unei interfeţe grafice este, desigur, dezvoltarea elementelor grafice care constituie ecranul, în raport cu funcţionalitatea oferită de sistem. Microchip oferă deja o bibliotecă grafică gratuită pentru utilizarea cu gama sa de microcontrolere PIC, precum şi recent lansata suită Graphics Display Designer, ce abordează cu familiara metodă “drag and drop” dezvoltarea de elemente grafice ce pot fi transmise prin motorul de accelerator grafic din familia PIC24FJ DA, fără necesitatea unei programări dificile. Atunci când este utilizat împreună cu biblioteca grafică, API-urile de interfaţare a elementelor ecranului la funcţiile sistemului pot fi manipulate cu uşurinţă.
Biblioteca grafică oferă un număr de elemente pre-definite, incluzând: butoane; ferestre; casete de bifare; butoane radio, text şi imagini. Suplimentar, inginerii pot implementa casete de editare şi listare, butoane alunecătoare şi scroll bar, indicatoare de progres şi indicatoare de măsurare. Constituită din 3 nivele, biblioteca conţine module generice, alături de nivele specifice dispozitivului şi aplicaţiei, ce pot lucra împreună cu dispozitivul de intrare utilizat pentru a crea o experienţă interactivă. Partea de bibliotecă descrisă ca module generice este predominată de nivelul obiect grafic (Graphics Object Layer), care defineşte şi controlează elementele ecranului.
Cele descrise accelerează puternic procesul de dezvoltare a interfeţelor grafice, utilizând atât elemente grafice furnizate de biblioteca grafică, precum forme şi fonturi de bază, precum şi dezvoltarea şi modificarea acestor elemente de bază pentru a include caracteristici specifice, inclusiv schimbări de textură şi meniuri contextuale.
Utilizând elementele hardware sofisticate ale noii familii PIC24FJ DA, cuplat cu resursele software gratuite, inclusiv Graphics Display Designer Suite şi bibliotecile grafice ale Microchip, dezvoltatorii pot realiza rapid un control grafic intuitiv şi impresionant pentru aproape orice aplicaţie.
Fiecare dintre membrii familiei PIC24FJ DA integrează cunoscuta tehnologie Microchip mTouch pentru implementarea de control tactil capacitiv, ce poate fi utilizat pentru implementarea unei interfeţe flexibile şi prietenoase pe o gamă de materiale de panouri frontale. De asemenea, biblioteca software gratuită asigură suport pentru tehnologie de ecran tactil rezistiv, ce poate fi implementată cu uşurinţă utilizând periferia ADC a familiei PIC24FJ DA.
Împreună, funcţiile şi resursele software creează platforma ideală pentru o gamă largă de aplicaţii ce utilizează interfeţe grafice cu utilizatorul. Prin adăugarea de interfeţe USB (Host, Device şi ON-The-Go), SPI şi UART, care sunt de asemenea complet integrate, noua familie PIC este capabilă de a răspunde cerinţelor unei game foarte largi de dispozitive.
www.microchip.com