vineri, 6 ianuarie 2012

    Tutorial despre microcontrollerele PIC - 

    Lecția 1


    Motto: „Dacă orice cunoştinţă pe care o deprinde un copil va fi depăşită moral înainte ca acesta să o poată folosi, care este utilitatea procesului de învăţare?


    Răspunsul este unul singur: unica abilitate cu adevărat competitivă şi valoroasă pe termen lung este capacitatea de a învăţa.” - Seymour Papert


Istoric


Anul 1971, prin fabricarea primului procesor de către societatea Intel, este considerat ca fiind cel care marchează începutul erei informaticii industriale. Acesta, setul 4004, proiectat de catre "legendarul" designer Federico Faggin - devenit ulterior preşedinte al faimoasei societăţi Zilog - avea deja 2300 tranzistoare integrate pe cip şi lucra cu un bus de date de 4 biţi. 4004 cuprindea o memorie fixă de 256 octeţi, o memorie RAM de 32 de biţi cu un port de ieşire de 4 biţi, un registru de deplasare de 10 biţi şi un microprocesor pe 4 biţi. 

Integrarea unui număr tot mai mare de tranzistoare pe cip a evoluat exponenţial (conform legii lui Moore), în paralel cu creşterea puterii de calcul şi a vitezei de execuţie. Ca “pietre de hotar” pe tărâmul acestor excelente realizări, au urmat celebrele 8080, 8085 şi Z80.

Avantajul principal al implementării cu microprocesor faţă de logica denumită “cablată” este aceea că se execută un program plasat în memorie, deci care se poate modifica. Acesta este principiul automatului programabil, la care sunt conectate toate intrările unei aplicaţii, programul administrând ieşirile în virtutea ecuaţiilor predefinite de către proiectant.

Logica clasică (numit
ă şi cablată), deşi încă extrem de aplicabilă, pare rămasă puţin în urmă faţă de avântul acestor componente noi şi performante, care îmbunătăţesc enorm flexibilitatea utilizării. În ziua de azi, majoritatea realizărilor electronice fac apel la aceste componente, care pot controla eficient practic orice element de automatizare, de uz casnic sau profesional.

Apariţia microcontrollerelor care asociază unui microprocesor “de bază” un program integrat în circuit, ca şi integrarea perifericelor şi a mai multor tipuri de memorie (RAM, EEPROM şi Flash) a permis evoluţia montajelor în sensul simplităţii şi a vitezei. Mai mult decât atât, prin progresul proceselor tehnologice o mulţime de periferice de maxim
ă utilizare au fost integrate în circuit (exemple: USB, I2C, RS232 / RS485, etc.). Ca  rezultat direct, există în acest moment pe piaţă numeroase familii de microcontrollere.

La începutul anilor 90, compania Microchip a proiectat un microcontroller CMOS (Complementary Metal Oxide Semiconductor – termenul se referă la tehnologia de realizare), anume microcontrollerul PIC. Extrem de utilizat la ora actuală, acest dispozitiv este un compromis între simplitate în utilizare, rapiditate şi preţ de cost scăzut.

MCU (MicroController Unit - abreviere uzuală pentru microcontrollere) din această familie posedă un set de instrucţiuni redus, fapt care îl plasează în familia de circuite de tip RISC (Reduced Instruction Set Computer). Nu în ultimul rând, PIC sunt apreciate pentru curba de învăţare rapidă (este vorba doar de 35 de instrucţiuni de bază).

Încă de la apariţie, microcontrollerele PIC au fost fabricate în mai multe versiuni:
- PIC UVPROM, care se pot şterge cu ajutorul unei surse de raze ultraviolete (UV)
- PIC OTPROM, programabile o singură dată (OTP – One Time Programmable)
- PIC EEPROM şi Flash EPROM, care sunt şterse electric şi re-inscriptibile

Din familiile de mai sus, practic astăzi ultimele sunt extrem de cunoscute (componentele cu memorie Flash – exemplu PIC 16F628), datorită flexibilităţii în utilizare. Există încă variantele OTP (cu posibilitatea de a fi scrise chiar de către fabricant) pentru aplicaţii ne-modificabile. Deşi re-inscriptibile, cele din gama UV sunt la un preţ de cost ridicat, datorită prezenţei ferestrei de cuarţ plasate pe cip, care permite ştergerea cu raze ultra-violete.

Când discutăm despre PIC, discutăm în fond despre o întreagă familie de microcontrollere. Modul în care diverse microcontrollere PIC diferă unele de altele este în cantitatea de resurse integrate pe cip: dimensiunea memoriilor RAM, EEPROM şi Flash, prezenţa / absenţa anumitor periferice (cum ar fi: I2C, RS232 – serial, USB, etc.) sau frecvenţa maximă a oscilatorului (pentru a aminti doar câteva dintre ele). 

O implicaţie importantă faţă de cele spuse mai sus este necesitatea ca în funcţionare, PIC să opereze în conformitate cu caracteristicile tehnice proprii, corecte. Setarea anumitor parametri de funcţionare este prevăzută prin „cuvântul de configurare” (Configuration Word), înainte de punerea în funcţiune. 

Modul de configurare poate fi definit chiar în etapa elaborării programului (fiind chiar recomandabil să se procedeze in acest fel). Rezultatul va fi scrierea acestui cuvânt special într-o locaţie rezervată a memoriei program, cunoscut sub numele de „cuvânt de configurare” (Configuration Word). Dar pentru că este un subiect relativ de “delicat”, voi reveni pe larg cu o altă ocazie.



Niciun comentariu:

Trimiteți un comentariu