1 - Generalitati MC - Verificare 1

S-ar putea să vă placă și

Sunteți pe pagina 1din 11

Cap.

1 MICROCONTROLERE (generalitati)

1. Introducere
In sistemele actuale de automatizare un rol tot mai important il au echipamentele
bazate pe microcontrolere, care reduc costul si gabaritul sistemului, extinzind capacitatile
functionale si performantele acestuia.
Microcontrolerul poate fi definit ca un microsistem specializat, care inglobeaza pe
acelasi chip mai multe componente, specifice unui sistem de control automat, cum ar fi: o
unitate centrala de prelucrare, memorie ROM, memorie RAM, interfete si circuite de I/O
(interfete de comunicatie seriale, timere programabile si contoare de evenimente, logica pentru
tratarea intreruperilor), toate unitatile fiind conectate la o magistrala (bus) interna unica.
Din punct de vedere istoric, aparitia microcontrolerelor se confunda cu etapa
dezvoltarii primelor generatii de procesoare. Initial, majoritatea procesoarelor erau folosite
exclusiv ca microcontrolere (in acceptiunea actuala a termenului), in sisteme dedicate
aplicatiilor de control al proceselor. Programarea acestor procesoare, pentru rezolvarea unei
probleme date, se facea direct in cod masina, setul de instructiuni fiind redus.
In prezent, microcontrolerele pot fi definite ca sisteme digitale integrate, cu diferite
nivele de complexitate si performante, capabile sa rezolve o gama larga de aplicatii, prin
utilizarea resurselor hardware multiple, inglobate in arhitectura si prin folosirea resurselor
software reflectate intr-un limbaj de asamblare propriu cu un set de instructiuni bogat.
Microcontrolerele actuale de 16 si 32 de biti se apropie prin performantele lor de cele ale
microprocesoarelor de uz general.

2. Caracteristici generale ale arhitecturii microcontrolerelor

Definitie: Un microcontroler este un calculator realizat într-un singur cip (circuit integrat).
Conţine unitatea centrală de prelucrare (UCP) şi o serie de periferice. În aplicaţiile simple, un
echipament poate conţine un singur circuit – care este chiar microcontrolerul.

Un microcontroler modern conţine majoritatea blocurilor prezentate în figura 1.1


(adesea chiar mai multe).

1
A. Din punct de vedere hardware microcontrolerele au inglobate pe aceeasi capsula diferite
elemente functionale care le fac deosebit de utile in aplicatii ce necesita un control automat.
Structura unui microcontroler include:
 unitatea centrala de prelucrare (Central Processing Unit - CPU) cu o arhitectura
orientata in general pe acumulator (Acumulator - A) sau, in unele cazuri, pe registri. Unitatea
centrala de prelucrare contine o unitate aritmetica si logica (Arithmetical Logic Unit - ALU)
care executa operatiile logice si aritmetice si care calculeaza adresele operanzilor din
memorie.
Registrii speciali ai unitatii centrale sunt: registrul contor de instructiuni (Program
Counter - PC), registrul indicator de stiva (Stack Pointer - SP), registrul indicatorilor
conditionali (Program Status Word - PSW).
 memoria ROM programabila (PROM/EPROM) care contine secventele de
initializare ale microcontrolerului, programul de executie si eventual un sistem de operare.
 memoria RAM pentru stocarea datelor care poate avea o organizare speciala sub
forma de bancuri de registri si/sau zona de memorie RAM propriu-zisa si care contine
operanzii si variabilele temporare necesare programului de executie.
 circuite de intrare/iesire (sau porturile I/O) cu functiuni variate, de la transferul
datelor de la sau catre microcontroler, pina la transferul semnalelor de control in sistem. In
functie de procesor, interfetele I/O sunt de tipul:
- Porturi paralele pentru transfer programat I/O
- Interfete de comunicatie seriala (Universal Asynchronous Receiver Transceiver -
UART) care permit comunicatia, de obicei la distanta, cu un dispecer sau calculator central,
pe canal telefonic.
- Timere Programabile si Contoare de Evenimente care furnizeaza semnale de control
si comanda in sistem si care pot urmari desfasurarea unor evenimente externe
microcontrolerului.
 Blocul de Control si Sincronizare (Timing) care furnizeaza semnale de comanda
pentru unitatile functionale ale microcontrolerului cum ar fi: semnalele de scriere/citire a

2
memoriei (RD/WR), semnalele de validare (strobe) pentru memorii, s.a.. El primeste din
exterior semnalele de initializare (RESET) si de cerere de intreruperi (INT). Acest bloc
contine si unitatea de tratare si control al intreruperilor, dotata, acolo unde sursele de cerere de
intrerupere sunt multiple, cu un codor de prioritati (logica pentru arbitrajul intreruperilor).
 Generatorul de semnale de ceas care furnizeaza tactul pentru toate blocurile
functionale ale microcontrolerului.
 Magistrala interna (pe 4, 8, 16, 32 sau 64 de biti) la care se conecteaza toate
elementele functionale ale microcontrolerului.

Observatii:
- in cazul arhitecturilor orientate pe registri acumulatorul (A) este inlocuit cu o arie de
registre;
- UCP contine un registru pentru instructiuni si un decodificator (RI & DI) care
furnizeaza instructiunea decodificata blocului de control al unitatii de executie (UE). La unele
microcontrolere exista o coada de instructiuni care face extragerea in avans a instructiunilor
din memoria program;
- pentru a preveni autoalimentarea pe intrari a UAL cu date de la iesirea lui (situatie
care se numeste “cursa critica” a circuitului combinational) se prevad pe ambele intrari niste
registre tampon (RT) care fac memorarea temporara a datelor de la intrarile UAL;
- Stiva se poate gasi in memoria RAM sau poate fi o stiva hardware inglobata in
microcontroler, avind mai multe niveluri (ea este realizata cu registre fizice). Avantajul unei
stive hardware apare la operatiile de apel si revenire din subrutine, la activitatile de raspuns la
cererile de intreruperi. Datorita adresabilitatii simple si rapide a nivelurilor stivei hardware
operatiile amintite vor fi executate intr-un timp mai scurt. Principalul dezavantaj al stivei
hardware este limitarea dimensiunii acesteia la cele citeva niveluri (24);
- memoria RAM poate avea o organizare mai speciala sub forma de arie de registre,
ferestre sau pagini de registre de memorie, caz in care adresarea memoriei se face cu o adresa
logica translatata in adresa fizica de catre UAL. In general, nu exista un bloc special, dedicat
calculului adresei. Adresa este inscrisa de pe magistrala interna in Registrul de Adresare
RAM;
- atit memoria RAM, cit si memoria ROM pot fi expandate in exteriorul chip-ului
marind capacitatea de adresare a microcontrolerului. Prin porturile de I/O se face adresarea si
transferul datelor cu memoria externa, comenzile de selectie si strobare a chip-urilor externe
fiind date de blocul de Control si Sincronizare (Timing);

3
- toate elementele specializate inglobate in microcontroler (timere, porturi, UART,
etc.) pot fi configurate separat prin program;
- la elementele constitutive prezentate in cadrul unui microcontroler se mai pot adauga
si alte dispozitive “on-chip” cu diferite variante de la o familie de microcontrolerele la alta.
Citeva exemple de astfel de dispositive sunt:
 timer de urmarire (watchdog timer) - cu rolul de a preveni resetarea
microcontrolerului la aparitia unor depasiri ale altor timere sau de a genera semnalul de
resetare la aparitia unor conditii critice aparute in functionare;
 circuite generatoare de pulsuri de comanda cu largime variabila programabila
(impulsuri PWM pentru comanda convertoarelor de energie);
 circuite PLL;
 controlere DMA, etc.
Alti producatori, pentru a mari performantele si pentru a extinde domeniile de
utilizare ale microcontrolerelor, inglobeaza pe acelasi chip circuite de esantionare/memorare
(Sample and Hold) si convertoare analog digitale (CAD) obtinind sisteme integrate, perfect
adaptatate aplicatiilor de achizitie si prelucare de date.

B. Din punct de vedere software microcontrolerele dispun de un limbaj propriu de


asamblare, cu un set de instructiuni bogat, care include principalele tipuri de instructiuni ale
unei masini de tip CISC (instructiuni pentru transferul datelor, instructiuni aritmetice,
instructiuni logice, instructiuni pentru transferul controlului in program, instructiuni de
control). Sunt prevazute in plus tipuri specifice de instructiuni cum ar fi: instructiuni de
adresare si configurare a porturilor I/O si a timerelor, instructiuni de comanda si configurare a
dispozitivelor de comunicatie seriala, instructiuni boolene (care opereaza la nivel de bit).
Dupa cum a fost mentionat anterior, arhitectura hardware a unitatii centrale este
orientata in principal pe acumulator, sau, in unele cazuri, pe registri. Daca microcontrolerul
este orientat pe acumulator, majoritatea instructiunilor logico-aritmetice si de transfer vor
folosi acumulatorul in operatiile respective. In cazul arhitecturii orientate pe registri,
instructiunile pot folosi operanzi exclusiv din registrele ariei de registre interne. Programul de
executie se inscrie in memoria ROM care din acest motiv este necesar sa fie programabila (de
aceea se folosesc memorii PROM sau EPROM). Acest fapt permite considerarea
microcontrolerelor ca niste microsisteme dedicate unor aplicatii specifice.
Pentru programare exista pachete software care includ emulatoare de microcontrolere,
impreuna cu un asamblor, permitind testarea si verificarea programelor inainte de a fi inscrise

4
in memorie. Sunt disponibile de asemenea si compilatoare de programe scrise in limbaje de
nivel inalt (ex.: compilatoare C), biblioteci de functii si de rutine de control predefinite,
precum si sisteme de operare. Datorita faptului ca microcontrolerele trebuie sa fie capabile sa
coordoneze activitati complexe, care presupun o monitorizare in paralel a evenimentelor din
sistem, este necesar ca sistemul de operare sa fie dotat cu facilitati de multitasking in timp
real. Ca urmare sistemele de operare dedicate microcontrolerelor au un nucleu care sa
implementeze conceptul de multitasking si sa-l faca operabil in timp real. Acest nucleu
(kernel) se numeste Real Time Kernel (RTK).

3. Domenii de utilizare ale microcontrolerelor

Principalele domenii de utilizare sunt:


 industrie: pentru sistemele de control automat al proceselor tehnologice si
industriale.
 transporturi: la activitati de urmarire si control al traficului feroviar, aerian, etc.
 meteorologie: la activati de control si monitorizare al factorilor de mediu.
 industria auto (“automotive applications”): la contolere de bord, controlere de
injectie, de suspensie, etc.
 industria de aparatura medicala: la EKG si EEG portabil.
 industria calculatoarelor si produselor electronice de larg consum: controlere de
imprimanta, de afisaj, de hard disc, servoprocesoare pentru CD-player, la scannere, fax-uri,
modem-uri, la instrumente muzicale gen: melotron, suntetizator, la telefoanele mobile, robot
telefonic, la casele de marcat electronice.
 industria de aparatura casnica: la controlul ambientului incaperilor (lumina,
ventilatie, incalzire), la cuptoarele cu microunde, masini de spalat, etc.

4. Clasificarea microcontrolerelor
Cel mai uzual criteriu de clasificare al microcontrolerelor este lăţimea
magistralei de date (nu de instrucţiuni, deoarece uneori sunt diferite). Cea mai mare răspândire
o au în prezent microcontrolerele pe 16 biţi.
Microcontrolerele pe 4 biţi se folosesc in special la aplicatii de larg consum si cost
redus cum ar fi: cuptoare cu microunde, prajitoare, aparate de barbierit electrice, etc. Ele sunt
disponibile doar în cantităţi foarte mari (5.000 de bucăţi sau mai mult) şi se folosesc în
aplicaţiile casnice cu un necesar minim de putere de calcul.

5
Microcontrolerele pe 8 biţi sunt oferite în capsule care pornesc de la 8 pini (şi un preţ
la magazin de circa 1 dolar) până la modele extrem de puternice, cu peste 200 de pini, oferite
la zeci de dolari. Ele sunt utilizate in aplicatii mai complexe cum ar fi: in receptoarele TV,
radio auto, in periferice si componente din industria computerelor si la orice aplicatie care
necesita un control electronic automat.
 Microcontrolerele pe 16 şi 32 de biţi oferă o putere de calcul considerabilă -
există în prezent controlere comparabile cu un microprocesor Pentium, consumând o putere
disipată redusă şi având un preţ suficient de mic pentru a echipa console video sau jucării
sofisticate. Microcontrolerele pe 16 biti sunt folosite ca driver de disc in industria
computerelor, in industria auto, in aplicatii de control industrial, iar cele pe 32 de biti sunt
folosite din ce in ce mai mult in domeniul comunicatiilor in retea la punti si routere de retea,
la imprimantele laser si cu jet de cerneala, la jocurile video;

La aceste domenii de utilizare pot fi adaugate aplicatii deosebite cum ar fi: folosirea
microcontrolerelor in simularea functiilor altor circuite sau procesoare (folosirea lor ca
procesoare digitale de semnal, ca circuite de conversie analog-digitala). De asemenea, pot fi
utilizate la implementarea unor algoritmi matematici complecsi (de exemplu, pentru calculcul
logaritmic cu precizie ridicata).
Firmele producatoare lanseaza pe piata familii de microcontrolere. In cadrul unei
familii gasim circuite diferentiate arhitectural, dar pastrind multe elemente comune, cu
posibilitatea alegerii unui reprezentant al familiei, functie de cerintele impuse de aplicatie. In
acest fel se extinde domeniul de aplicatie al microcontrolerelor prin realizarea unor circuite
dedicate unor anumite arii de utilizare.

5. Instrumente de dezvoltare software folosite in cazul microcontrolerelor

Programarea microcontrolerelor se realizează de obicei în limbaj de asamblare sau în


C (deşi au apărut deja variante de programare în alte limbaje - BASIC fiind un exemplu demn
de luat în considerare).
Programarea în limbaj de asamblare constă în instrucţiuni (codificate prin mnemonice
scurte) şi operanzi corespunzători operaţiilor elementare oferite de controler.
Asambloarele sunt oferite de obicei gratis de producătorii controlerelor, pe când
compilatoarele C variază de la gratis (când este posibil să fie incomplete sau pline de bug-uri)
până la preţuri prohibitive de mii de dolari (cu un număr modest de bug-uri). Până în prezent

6
nu există medii C similare cu cele de pe PC la capitolul facilităţi, dar tendinţa clară este o
apropiere de acestea.

Monitorul (Programul monitor)


Programul monitor este o aplicaţie rulată de controler care comunică cu un PC de obicei prin
intermediul interfeţei seriale. Capabilităţile unui asemenea program sunt în general reduse. Un
program monitor tipic este o aplicaţie DOS sau o aplicaţie care rulează într-o fereastră de tip
DOS. Deşi caracteristicile variază de la un program la altul, un monitor poate în general
transmite mesaje text şi numere către utilizator, folosind un port serial al microcontrolerului,
care nu va mai putea fi utilizat în alte scopuri. De cele mai multe ori este posibilă oprirea
execuţiei programului testat şi inspectarea sau chiar modificarea memoriei RAM, respectiv a
registrelor. Importanţa şi răspândirea acestui instrument este în continuă scădere, tinzându-se
la înlocuirea lui cu medii de programare integrate, dezvoltate sub Windows.
Mediul integrat de dezvoltare (IDE - Integrated Development Environment)
Aplicaţiile Windows au devenit un standard care înlocuiește vechile programe DOS asociate
microcontrolerelor. Mai mult, în prezent un singur mediu integrat oferă posibilitatea:
1. asamblării (uneori şi compilării!);
2. simulării;
3. editării de legături;
4. lucrului cu biblioteci;
5. testării (în mod debugger sau emulator);
6. generării codului obiect final în format hexazecimal sau binar;
7. conectării la programator şi programării circuitului.
Pentru Microchip; mediul integrat se numeşte MPLAB şi este gratuit, iar ultima versiune se
poate descărca de la adresa Internet a firmei: www.microchip.com.
Asamblorul
Asamblorul este programul care prelucrează instrucțiunile scrise într-un limbaj simbolic
pentru calculator, traducându-le în coduri ale limbajului mașină.
Codul scris în limbaj de asamblare este de obicei mai scurt şi mai performant (ca durată de
execuţie) comparat cu cel elaborat în C. O serie de alte avantaje determină însă tot mai multe
companii să aleagă programarea în C (şi în viitorul apropiat probabil în Visual C!):
• uşurinţa elaborării codului sursă;
• reutilizarea codului prin portarea extrem de simplă pe alte platforme;
• standardizarea uşoară;

7
• posibilitatea elaborării şi managementului unor programe laborioase şi a unor structuri de
date dinamice greu sau imposibil de obţinut în asamblare;
• eliberarea uşoară a memoriei RAM nefolosite pentru alte variabile.
În urma asamblării se poate genera:
• un cod absolut, la adresele fixe stabilite de utilizator;
• un cod relocabil, la care adresele sunt în principiu alocate de editorul de legături.
Deşi asambloarele au o sarcină relativ simplă, nu există un standard ANSI pentru ele, de aceea
sintaxa variază de la un asamblor la altul. În plus limbajul de asamblare este specific fiecărei
familii de microcontrolere. Un asamblor puternic oferă capabilităţi de macroinstrucțiuni
imbricate (adică grup de instrucțiuni suprapuse) cu etichete locale, bucle imbricate de
asamblare condiţionată şi mesaje de eroare clare şi explicite.
Pentru Microchip, asamblorul oferit se numeşte MPASMWIN, face parte din pachetul
MPLAB şi este gratuit.
Simulatorul
Simulatorul este un instrument software care câştigă tot mai mult teren datorită creşterii
performanţelor şi a costului scăzut sau nul. După cum îi sugerează numele, acesta este un
program care simulează comportarea microcontrolerului pe un PC, permiţând rularea pas cu
pas, examinarea şi/sau modificarea registrelor, a memoriei, etc. Simulatoarele performante
oferă facilităţi suplimentare, cum ar fi:
• simulare asincronă;
• fişiere de stimuli care permit modificări controlate pentru I/O;
• simulare de periferice complexe: timere, PWM, CAD, etc.
• simularea evenimentelor complexe: întreruperi, WDT, etc.
Cu toate că reprezintă un instrument deosebit de valoros de dezvoltare şi testare, simulatoarele
nu pot rezolva o serie de probleme legate de comportarea în timp real a controlerului. Nici un
simulator nu se apropie măcar de viteza de operare a controlerului simulat. Pentru Microchip,
simulatorul se numeşte MPSIM, face parte din pachetul MPLAB şi este gratuit.
Este evident că pentru funcţionare, simulatorul nu are nevoie de nici un fel de hardware.
EXEMPLU: Simulatorul Proteus
Deşi părea greu de crezut, realizatorii pachetului Proteus au reuşit performanţa remarcabilă de
a simula funcţionarea hardware a unui procesor într-un mediu tipic de circuite electronice. Cu
o interfaţă grafică intuitivă (dar cu butoanele de mouse inversate) se pot simula o serie de
familii de procesoare (Intel 8031 şi o serie de derivate, Motorola 68000, Zilog Z80 şi

8
perifericele sale, Intel 8255, controlere din familia AVR Atmel, Motorola HC11, Microchip
PIC12C508, PIC16F84A, PIC16F877 şi multe altele).
Sunt oferite facilităţi de animaţie, simulări analogice Spice, simulări digitale dar mai ales
posibilitatea încărcării codului compilat în procesor, rularea pas cu pas, inspectarea registrelor.
în anumite situaţii este posibilă chiar verificarea codului sursă scris în limbaj de asamblare sau
C.
Pentru scopuri didactice şi dezvoltarea de proiecte mici-medii nu există o variantă mai bună
(poate mai ieftină).
Generatorul de fişier executabil în final, mediul software trebuie să producă un fişier care se
va încărca în memoria program a controlerului (într-un EPROM extern sau intern - în
memoria FLASH). Cele mai uzuale formate pentru aceste fişiere sunt Intel hexa (.nex),
Motorola S19 (.s19) şi binar. Există o serie de utilitare gratuite de conversie între aceste
formate.

Editorul de legături concatenează diversele module rezultate în urma asamblării și alocă


adrese pentru aceste module, dar şi pentru variabile din memoria RAM. Editarea de legături
permite între altele lucrul în echipă, reutilizarea codului, facilităţi care se aplică în cadrul
proiectelor de dimensiuni mari.
Pentru Microchip, editorul de legături se numeşte MPLINK, face parte din pachetul MPLAB
şi este gratuit.

Lucrul cu biblioteci (Bibliotecarul)


O dată testate, diferitele subrutine asamblate/compilate pot fi „colecţionate" în biblioteci.
Această funcţie este îndeplinită de un program specializat, numit bibliotecar. Pentru
Microchip, bibliotecarul se numeşte MPLIB, face parte din pachetul MPLAB şi este gratuit.

6. Instrumente de dezvoltare hardware folosite in cazul microcontrolerelor

Debugger-ul
Debugger-ul este un instrument hardware asistat de un software corespunzător prin
care se testează în anumite limite funcţionarea aplicaţiei dezvoltate.
Debugger-ul foloseşte chiar microcontrolerul din aplicaţie pentru rulare pas cu pas, interogare
de registre, afişare de stări, etc. De cele mai multe ori facilitatea de debugg este combinată cu
cea de programare (care se realizează uzual serial pe 2-4 fire). În concluzie, cu preţul a câtorva

9
locaţii folosite din memoria RAM şi câteva zeci din cea ROM, a 2-4 pini folosiţi pentru
comunicare, se poate executa un program în regim pas cu pas, se pot seta puncte de
întrerupere, se pot vizualiza şi modifica registrele procesorului, etc.
În acest mod se poate verifica funcţionarea aplicaţiei foarte aproape de situaţia reală şi se pot
corecta o serie de greşeli care au scăpat simulării. Nu se pot totuşi depista corelaţiile din timp
real (comunicaţia cu debugger-ul consumă timp). Un debugger reprezintă o alegere corectă
pentru o firmă mică, care nu-şi poate permite un emulator.

Emulatorul
Un emulator este un instrument hardware asistat de un software corespunzător care
permite explorarea totală a controlerului şi rularea pas cu pas a programului.
Un emulator este un echipament extern care comunică cu PC-ul prin interfaţa serială
sau paralelă, şi este ataşat prin intermediul unui dispozitiv conectat în locul microcontrolerului
emulat; acest ansamblu se comportă identic cu microcontrolerul emulat. Emulatorul va fi
întotdeauna un circuit în timp real (la fel de rapid ca procesorul martor) şi oferă toate
facilităţile acestuia. Altfel spus, el se conectează în locul microcontrolerului în sistemul pentru
care se dezvoltă aplicația, permițând un control total al sistemului țintă, în timp real, fără a
folosi nimic din resursele acestuia.
Emulatoarele sunt specifice fiecărei familii de controlere. Emulatoarele sunt extrem de
scumpe, de la 2.000 USD la 20.000 USD. Au apărut pe piaţă o serie de echipamente ieftine,
sub 1.000 USD, denumite comercial "emulatoare", care sunt debuggere mai mult sau mai
puţin performante - acestea vor folosi o parte din resursele procesorului martor (unele locaţii
RAM, memorie RAM şi minim două linii I/O). Asemenea echipamente nu pot funcţiona în
timp real şi nu pot testa integral comportarea microcontrolerului emulat în circuit. Chiar un
emulator "cinstit" („corect”) diferă ca şi caracteristici electrice de controlerele emulate
(curenţi de intrare/ieşire, temporizări), iar de cele mai multe ori nu pot opera la tensiuni şi
frecvenţe de tact reduse.

10
Programatorul
După asamblarea şi/sau compilarea codului sursă, fişierul hexazecimal generat trebuie
"introdus" în microcontroler. Acest lucru se poate realiza:
1. prin intermediul unui programator de memorii EPROM în cazul variantelor de controlere
fără memorie program. Circuitul EPROM astfel programat se va introduce într-un soclu pe
placa microsistemului. Orice reprogramare a memoriei presupune o ştergere prin expunerea
memoriei EPROM la radiaţii ultraviolete timp de circa 30 de minute şi apoi reprogramarea în
programator.
2. prin intermediul unui emulator de EPROM, realizat de obicei cu ajutorul unei memorii
SRAM. Emulatorul se conectează la soclul memoriei EPROM şi se comportă ca o memorie
EPROM, păcălind microsistemul că ar fi o memorie EPROM. Reprogramarea este extrem de
rapidă în acest caz, emulatorul fiind legat de obicei la un PC prin intermediul portului paralel
sau mai rar serial. Din păcate un emulator de EPROM este o piesă relativ costisitoare iar
dezvoltarea soluţiilor FLASH a făcut această opţiune mai puţin atractivă.
3. pentru variantele OTP şi FLASH, utilizarea unui programator specific familiei de
controlere este obligatorie, deoarece specificaţiile de programare pentru fiecare tip de
controlere sunt clare şi publice, pe Internet se găsesc o serie de scheme de programatoare
simple şi uşor de construit. Asemenea programatoare se conectează la PC cel mai adesea pe
portul paralel, dar şi portul serial este uneori folosit. Un microcontroler FLASH cu un
programator simplu (de pe Internet) şi un mediu IDE gratuit reprezintă cu siguranţă cea mai
ieftină combinaţie prin intermediul căreia se poate dezvolta un proiect cu microcontroler
astăzi.

11

S-ar putea să vă placă și