În trecut am folosit compilatorul C de la MikroElektronika pentru microcontrolerele AVR la crearea de software pentru sisteme de monitorizare. Îmi amintesc că m-a surprins multitudinea de biblioteci gata realizate destinate operării standardelor populare de transmisie şi a echipamentelor externe, utilizate în mod curent împreună cu microcontrolerul, cum ar fi afişajul LCD.
Autor: Jacek Bogusz
De peste 10 ani, firma MikroElektronika este una dintre companiile care creează software şi instrumente hardware pentru miezurile mai importante de microcontrolere. Firma produce plăci de evaluare, module de extensie, compilatoare Basic, C şi Pascal, programe utilitare, editează cărţi. Activitatea firmei este fundamentată pe dorinţa de a pune la dispoziţia inginerilor instrumente care să le permită realizarea rapidă a proiectelor. Dar firma nu se axează doar pe acest domeniu de activitate. Printre produsele ei vor găsi ceva util şi oamenii obişnuiţi, care doresc să înveţe cum se programează microcontrolerele, pasionaţii sau entuziaştii care doresc, pur şi simplu, să realizeze şi să programeze echipamente pentru uzul propriu. În materialele sale, firma menţionează că 48% din piaţa sa o reprezintă companiile, circa 27% unităţile de învăţământ superior, restul fiind beneficiari individuali.
Toţi cei care au intrat la un moment dat în contact cu programarea au auzit de limbajul Basic. Părerile despre acesta sunt împărţite. Reproşul fundamental la adresa acestuia, care vine mai mult din trecut decât din prezent, s-a referit la faptul că nu este un limbaj structural, iar instrucţiunile paşilor, executate în locul apelărilor de funcţii şi subprograme, transmit nişte obiceiuri proaste de programare.
Însă, de la acel moment, Basic a evoluat devenind probabil cel mai uşor de stăpânit, chiar şi de către adepţii începători ai artei programării microcontrolerelor. Compilatoarele Basic se adresează, în principal, persoanelor care pun preţ pe uşurinţa programării şi nu au ambiţia de a crea aplicaţii complexe, repartizate pe mai multe module şi create de echipe de programatori.
mikroBasic PRO
Compilatorul mikroBasic PRO pentru microcontrolere PIC a fost elaborat cu gândul la fiecare utilizator de microcontroler. În pofida părerilor amintite mai sus, Basic este în continuare cel mai bun limbaj pentru începătorii în programarea microcontrolerelor, datorită sintaxei, care este uşor de înţeles şi învăţat şi datorită structurii transparente a programului. Atu-urile importante ale compilatorului mikroBasic PRO sunt mediul de programare IDE uşor de utilizat, indicaţiile cuprinzătoare din fişierul de ajutor şi suportul tehnic, care acoperă întreaga perioadă de utilizare a produsului. Acest lucru este deosebit de important atunci când se fac primii paşi în programarea microcontrolerelor PIC.
Nu trebuie să uităm nici de cele peste 500 de funcţii de bibliotecă, nici de numeroasele exemple de programare, care facilitează şi mai mult şi fac mai rapidă elaborarea echipamentelor. Putem risca să afirmăm că acest compilator realizează cea mai mare parte a muncii programatorului, oferindu-i soluţii gata de utilizare. În acest mod, chiar şi începătorii pot scrie programe care vor funcţiona ca şi cum ar fi fost create de experţi.
În afară de enorma bibliotecă de funcţii, compilatorul efectuează şi o optimizare pe 4 nivele a programului, ceea ce permite reducerea codului obiect cu până la 20%.
Aşa cum stă bine unui instrument de programare avansat, compilatorul este dotat cu confortabilul IDE. Acesta este un editor complet profesional, uşor de folosit, intuitiv, rapid, funcţional, care nu pune probleme la editarea sursei programului, nici în utilizare. Ca orice produs profesional, mikroBasic are suport pentru debuggerul mikroICD, dacă este folosit cu programatorul mikroProg. Acest lucru permite programarea memoriei Flash a microcontrolerului şi pornirea programului pas cu pas. Fapt important, programul şi microcontrolerul funcţionează în mediu real, astfel încât pot fi observate şi reacţiile circuitelor periferice la semnalele de comandă.
Debuggerul mikroICD este un modul de programare DLL distinct, care realizează un depanator avansat. Sprijină lucrul pas cu pas cu funcţiile Step over [F8], Step into [F7], Step out [Ctrl+F8], Run [F6], Run To Cursor [F4]. În plus, permite punerea de capcane standard şi avansate, condiţionate, făcând posibilă utilizarea întregului potenţial de depistare rapidă a erorilor.
Oricine a scris, la un moment dat, un program pentru un echipament folosit de om ştie că, întotdeauna, cel mai mare efort îl cere programarea interfeţei cu utilizatorul. În mod paradoxal, gradul de complicare a programului a crescut o dată cu dotarea microcontrolerelor cu periferice moderne, cum sunt afişajele LCD color şi ecranele tactile. Acum, în funcţie de informaţiile afişate pe ecran, foarte adesea este necesară angajarea în proiect nu doar a unui programator, dar şi a unui grafician. Din păcate, chiar dacă estetica aplicaţiei are de câştigat, împărţirea amintită a funcţiilor poate prelungi termenul de realizare a proiectului, iar în contextul progresului tehnologic actual şi al vitezei de elaborare de noi subansambluri şi echipamente, o importanţă esenţială o are timpul care trece de la idee până la lansarea produsului pe piaţă. Dat fiind că, pentru anumite grupe de echipamente sunt elaborate elemente grafice permanente afişate pe ecran, care aproape nu se modifică, au fost create biblioteci de simboluri şi programe care facilitează proiectarea aspectului ecranului afişat. Firma MikroElektronika oferă şi ea asemenea instrumente, care funcţionează excelent în colaborare cu compilatoarele de firmă – acestea sunt Visual GLCD şi Visual TFT, programe destinate proiectării interfeţelor grafice cu utilizatorul. Datorită acestora, chiar şi un începător, care nu beneficiază de suportul unui grafician, poate crea cu uşurinţă o interfaţă grafică cu utilizatorul. Fapt important, proiectele pot fi distribuite cu ajutorul Package Manager Software, care permite instalarea cu uşurinţă a codului creat de altcineva doar cu un singur clic pe colecţia care conţine pachetul de programe.
Firma declară cu una dintre priorităţile activităţii sale este economisirea timpului de lucru al programatorilor. Îmi amintesc propria impresie, menţionată la început, pe care mi-a lăsat-o utilizarea compilatorului de limbaj C şi chiar aşa stau lucrurile. Mi-au fost de mare folos funcţiile de bibliotecă pentru operarea interfeţelor seriale populare, de exemplu a senzorilor cu interfaţă 1-Wire. În afară de biblioteca extinsă de funcţii suplimentare amintită mai sus, compilatorul este dotat şi cu instrumente utile. Acestea sunt LCD Custom Character Tool (program pentru proiectarea caracterelor proprii afişate pe ecranul LCD), GLCD Bitmap Editor (editor pentru imaginile afişate pe ecranul grafic), Seven Segment Editor (editor al caracterelor afişate pe ecranul cu 7 segmente), UART Terminal (program care permite recepţionarea, afişarea şi trimiterea de caractere prin RS232), UDP Terminal (ca terminalul UART, dar utilizând protocolul UDP), HID Terminal (terminal pentru interfaţă USB), ASCII Chart (tabel de coduri pentru caractere ASCII), Active Comments Editor (editor de comentarii active incluse în codul programului), Advanced Statistics (instrument care permite crearea de statistici legate de funcţionarea programului) şi multe altele.
Compilatorul este oferit la un preţ foarte atractiv, dacă îl raportăm la posibilităţile întregului pachet. Lucru important, licenţa poate fi acordată în două moduri. Primul dintre acestea şi cel mai popular este cheia hardware, ataşată la portul USB. În acest mod, pachetul poate fi instalat pe câteva calculatoare (de exemplu pe desktop-ul de acasă, pe notebook, pe calculatorul desktop de la firmă etc.) şi se va lucra pe cel la care este ataşată cheia. Cealaltă metodă de licenţiere leagă pachetul de echipament, deoarece licenţa este furnizată sub formă de fişier, care trebuie instalat pe un calculator. Această instalare este posibilă doar o dată. Transferarea programului necesită ştergerea fişierului de licenţă şi încărcarea lui într-un alt calculator.
La final, merită să amintim că, în afară de compilatoare şi instrumente de programare, firma MikroElektronika oferă şi o serie de kit-uri de evaluare, module suplimentare şi programatoare. Acestea au suport firmware şi completează în mod excelent oferta firmei. n
Acestea şi alte produse de la MikroElektronika sunt disponibile în oferta firmei TME.
Pentru mai multe detalii:
Transfer Multisort Elektronik s.r.l.
Str. B.P. Haşdeu nr. 8, Timişoara
Tel.: +40 356467401
Fax: +40 356467400
www.tme.ro