Sunteți pe pagina 1din 10

Universitatea Tehnică „Gheorghe Asachi”

din Iași
Facultatea de Mecanică

SOFT PENTRU SISTEME MECATRONICE

Referat

Microcontrolerul PIC. Noțiuni teoretice.


Unitatea de memorie și organizarea ei.

Profesor: Dumitru Leohchi


Student: Ciobanu Anatolie
Grupa: 8408

Iași 2021-2022
Cuprins:

Introducere .......................................................................................................3
Noțiuni teoretice ...............................................................................................4
Unitatea de memorie .........................................................................................6
Concluzii............................................................................................................8
Bibliografie........................................................................................................9

2
Introducere
Microcontrolerul este o structură electronică destinată controlului unui proces
sau, mai general, este un microcircuit care incorporează o unitate centrală (CPU) şi
o memorie împreună cu resurse care-i permit interacțiunea cu mediul exterior.
Un microcontroler cuprinde următoarele componente:
 unitatea de memorie – cu rol de a stoca datele;
 unitatea de procesare centrală – asigură operațiile aritmetice şi logice;
 bus-ul – magistrala de date şi de adrese;
 unitatea intrare-ieşire (o parte din pinii microcontrolerului) – permite
introducerea datelor în micrcontroler sau transmiterea datelor la mediul
extern;
 comunicaţia serială – permite conectarea microcontrolerului cu alte
echipamente (de exemplu un calculator personal sau chiar un alt
microcontroler);
 unitatea timer – oferă informaţii privind durata unui proces;
 watchdog-ul – asigură resetarea microcontrolerului atunci când acesta se
blochează;

3
 convertorul Analog-Digital – converteşte semnalele analogice în semnale

numerice;

Microcontrolerele PIC – Noţiuni teoretice

Microcontrolerele din familia PIC (Programmable Interface Controler) sunt


circuite de dimensiuni mici, fabricate de Societatea americană Arizona
MICROCHIP Technology. Un PIC nu este altceva decât un microcontroler, care
altfel spus este o unitate de tratare a informaţiei de tip microprocesor la care se
adaugă periferice interne care permit realizarea de montaje fără a fi necesare alte
componente externe.

4
Microcontrolerele PIC au o arhitectură RISC (Reduced Instruction Set Computer)
sau o arhitectură Harvard. Microcontrolerele cu arhitectură Harvard sunt numite
"microcontrolere RISC". Microcontrolerele cu arhitectura von-Newmann sunt
numite "microcontrolere CISC". Numele CISC înseamnă Complex Instruction Set
Computer.
Microcontrolerul PIC16F877A este un microcontroler RISC, aceasta înseamnă că
are un set redus de instrucţiuni, mai precis 35 de instrucţiuni.
Familia de microcontrolere PIC este divizată, în prezent, în trei mari familii:
 Base-Line, care utilizează cuvinte ale instrucţiunilor de 12 biţi;
 Mid-Range, care utilizează cuvinte de 14 biţi;
 High-End, care utilizează cuvinte de 16 biţi.
Pentru a identifica un microcontroler PIC se utilizează numărul său. Primele două
cifre indică categoria acestui microcontroler. Numărul 16 arată că acest
microcontroler este un microcontroler PIC Mid-Range.
În continuare se poate găsi una din următoarele litere:
C – indică că memoria program este un EPROM;
CR – arată că memoria program este de tip ROM;
F – precizează existenta unei memorii de tip FLASH.
Deci, un microcontroler PIC 16F877A este un PIC Mid-Range (16), a cărui
memorie program este de tip FLASH (F), deci se poate rescrie un program de mai
multe ori şi este de tip 877A.

5
Schema din figura de mai jos reprezintă secţiunea centrală a unui microcontroler în
general.

Fig. 3 Schiţa microcontrolerului cu elementele lui de bază şi conexiunile sale interne

Unitatea de memorie
Memoria este o parte a microcontrolerului a cărei funcţie este de a înmagazina
date. Cel mai uşor mod de a explica este de a-l descrie ca un dulap mare cu multe
sertare. Dacă presupunem că am marcat sertarele într-un asemenea fel încât să nu
fie confundate, oricare din conţinutul lor va fi atunci uşor accesibil. Este suficient
să se ştie adresa sertarului şi astfel conţinutul lui ne va fi cunoscut în mod sigur.

6
Pentru o anumită intrare obţinem conţinutul unei anumite adrese a locaţiei de
memorie. Pentru scrierea şi citirea în memorie sunt necesare două noi concepte, şi
anume: adresarea şi locaţia de memorie. Memoria constă din toate locaţiile de
memorie, iar adresarea nu este altceva decât precizarea unei adrese dintre ele.
Aceasta înseamnă că noi trebuie să selectăm adresa locaţiei de memorie la un
capăt, şi la celălalt capăt trebuie să aşteptăm conţinutul acelei locaţii. În afară de
citirea dintr-o locaţie de memorie, memoria trebuie de asemenea să permită
scrierea în ea. Aceasta se face prin asigurarea unei linii adiţionale numită linie de
control.
Organizarea memoriei
Memoria microcontrolerului PIC 16F877A este repartizată în trei zone.
PIC16F877A are două blocuri separate de memorie, unul pentru date şi celălalt
pentru programe. Memoria EEPROM şi registrele GPR în memoria RAM
constituie un bloc, şi memoria FLASH constituie un bloc de programe.
Memorie RAM
Este o memorie din care datele pot fi accesare (citite sau scrise) individual.
Memoria RAM este o memorie volatilă, adică datele memorate în ea se șterg
atunci când alimentarea microcontroler-ului este întreruptă.
Memorie Salvare Date (EEPROM)

7
In aplicațiile practice microcontroler-ele trebuie uneori să memoreze niște date
undeva unde le poate regăsi intacte oricând, chiar şi după restartarea/repornirea
echipamentului pe care îl controlează.
Memoria program
Memoria program a fost realizată în tehnologia FLASH ceea ce face posibil de a
programa un microcontroler de mai multe ori înainte de a fi instalat într-un montaj,
şi chiar după instalarea sa dacă se întâmplă unele schimbări în program sau
parametri de proces. Mărimea memoriei program este de 1024 locaţii cu lăţime de
14 biţi unde locaţiile zero şi patru sunt rezervate pentru resetare şi pentru vectorul
întrerupere.
Memoria de date
Memoria de date este partiţionată în 4 bancuri. Fiecare banc conţine General
Purpose Registers (GPR - Registrele cu Scop General) şi Special Function
Registers (SFR - Registrele Funcţiei Speciale). Comutarea între aceste bancuri cere
ca biţii RP0 şi RP1, din registrul STATUS să fie configuraţi pentru bancul dorit. În
tabelul de mai jos se precizează valoarea pentru biţii RP0 şi RP1.

Calea de transmitere a informaţiei este numită "bus"- magistrală. Fizic, el


reprezintă un grup de 8, 16, sau mai multe fire. Sunt două tipuri de bus-uri: bus de
adresă şi bus de date. Primul constă din atâtea linii cât este cantitatea de memorie
ce dorim să o adresăm, iar celălalt este atât de lat cât sunt datele, în cazul nostru 8
biţi sau linia de conectare.

Concluzie

Datorită faptului că microcontrolerul este un computer mic,


capacitățile sale sunt foarte largi. Poate fi folosit la foarte multe proiecte,
având o dimensiune mica poate fi integrat oriunde. A devenit mai ușor

8
de programat. Costul mic, producție mare si durata mare de viată, toate
acestea au contribuit la o utilizare globala.
Designul este unul familiar, datorita așezarea pinilor, este mai ușor de
conectat pe placi. Dotat cu memorie interna, convertor analog/digital,
este mai ușor de folosit.
Datorita acestor calități este folosit in majoritatea aplicațiilor electronice.

Bibliografie:

Leohchi, D., Limbaje de Programare pentru roboți, Cursul nr. 7


9
https://hobbytronica.ro/ce-este-un-microcontroller/

10

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