Top Banner
15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru specificaţia sistemelor 3. Microcontrolere 4. Procesoare dedicate 5. Interfeţe de comunicaţie 6. Periferice pentru sisteme dedicate 7. Dezvoltarea programelor 8. Sisteme de operare dedicate
56

Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

Sep 08, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 1

Cuprins

1. Introducere2. Modele şi limbaje pentru specificaţia

sistemelor3. Microcontrolere4. Procesoare dedicate5. Interfeţe de comunicaţie6. Periferice pentru sisteme dedicate7. Dezvoltarea programelor8. Sisteme de operare dedicate

Page 2: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 2

Microcontrolere

Microcontrolere 8051Microcontrolere PICMicrocontrolere AVRMicrocontrolere MAXQMicrocontrolere DSP

Page 3: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 3

Microcontrolere 8051

Arhitectura 8051Organizarea memorieiRegistre cu funcţii specialePorturi de I/E

Page 4: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 4

Arhitectura 8051 (1)

A fost proiectată de firma Intel la începutul anilor 1980 → familia MCS-51Numeroase microcontrolere proiectate ulterior sunt compatibile cu arhitectura 8051� Diferiţi producători au adoptat arhitectura� Compatibilitatea programelor

Există diferite extensii ale arhitecturii 8051� Memorii de dimensiuni mai mari� Interfeţe de I/E suplimentare

Page 5: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 5

Arhitectura 8051 (2)

UCP de 8 biţi → aplicaţii de controlMemorii separate de program şi de date → arhitectură Harvard� Spaţii de adresare de câte 64 KB� Memorie internă de program: 4 KB, 8 KB, 16

KB → EPROM� Memorie internă de date: 128/256 B → RAM

Patru porturi de I/E → 32 de linii bidirecţionaleDouă numărătoare/contoare de timp Interfaţă serială UART

Page 6: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 6

Arhitectura 8051 (3)

Page 7: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 7

Arhitectura 8051 (4)

Semnale� -INT0, -INT1: surse de întreruperi externe� T0, T1: intrări de ceas pentru numărătoare� -RD: citire pentru memoria RAM externă� -WR: scriere pentru memoria RAM externă� -EA (External Access): selecţia primilor 4

KB (8 KB, 16 KB) ai memoriei de program → memoria internă sau externă

� ALE (Address Latch Enable): semnal pentru multiplexarea adreselor şi datelor (P0)

Page 8: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 8

Arhitectura 8051 (5)

� -PSEN (Program Store ENable): semnal de strob pentru citirea memoriei de program externe

� P0: port de adrese (A7..A0) sau date; port de I/E

� P2: port de adrese (A15..A8); port de I/E� P1, P3: porturi de I/E� RXD: intrare pentru comunicaţia serială� TXD: ieşire pentru comunicaţia serială

Page 9: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 9

Microcontrolere 8051

Arhitectura 8051Organizarea memorieiRegistre cu funcţii specialePorturi de I/E

Page 10: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 10

Organizarea memoriei (1)

Spaţii de adrese separate pentru memoria de program şi cea de date� Memoria de program poate fi numai citită� Primii 4 KB, 8 KB sau 16 KB ai memoriei de

program sunt interni� Memoria de date poate fi accesată prin

adrese de 8 biţi� Se pot genera adrese de 16 biţi pentru

memoria de date prin registrul DPTR

Page 11: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 11

Organizarea memoriei (2)

Memoria de program� După resetare, execuţia programului

începe de la adresa 0000h� Locaţiile 0003h .. 0033h conţin rutinele de

tratare ale întreruperilor� Adresele memoriei de program sunt

întotdeauna de 16 biţi� -EA: validează sau invalidează utilizarea

memoriei de program interne

Page 12: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 12

Organizarea memoriei (3)

Page 13: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 13

Organizarea memoriei (4)

Configuraţie pentru utilizarea memoriei de program externe

Page 14: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 14

Organizarea memoriei (5)

Memoria internă de date� Adresele pentru această memorie sunt de

8 biţi → spaţiu adresabil de 256 octeţi� Memoria este împărţită în mai multe blocuri� Adresele 00h..1Fh: patru bancuri de câte 8

registre (R0 .. R7)� Adresele 20h..2Fh: locaţii adresabile la

nivel de bit (adrese de biţi între 00h..7Fh) � Adresele 30h..7Fh: 80 de locaţii disponibile

(inclusiv pentru stivă)

Page 15: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 15

Organizarea memoriei (6)

Page 16: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 16

Organizarea memoriei (7)

� Adresele 80h..FFh: registre cu funcţii speciale SFR (Special Function Register) → adresare directă

� Aceeaşi zonă poate conţine 128 de locaţii suplimentare → adresare indirectă

Memoria externă de date� Adresele pentru această memorie pot fi de

8 sau 16 biţi� -RD, -WR: semnale pentru citirea şi

scrierea memoriei externe de date

Page 17: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 17

Organizarea memoriei (8)

Configuraţie pentru utilizarea unei memorii externe de date de până la 2 KB

Page 18: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 18

Microcontrolere 8051

Arhitectura 8051Organizarea memorieiRegistre cu funcţii specialePorturi de I/E

Page 19: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 19

Registre cu funcţii speciale (1)

Registre utilizate pentru unele instrucţiuni şi pentru controlul diferitelor periferice� Pot fi accesate numai prin adresare directă

Nucleul de bază 8051 conţine 21 de registre speciale SFRMicrocontrolerele îmbunătăţite conţin registre SFR suplimentareRegistrele cu adrese de forma X0h şi X8h sunt adresabile şi la nivel de bit (adrese între 80h..FFh)

Page 20: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 20

Registre cu funcţii speciale (2)

Page 21: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 21

Registre cu funcţii speciale (3)

Registrul ACC� Registru acumulator� Conţine unul din operanzii instrucţiunilor

aritmetice/logice şi rezultatul� Transferurile între registre trebuie

efectuate prin intermediul acumulatoruluiRegistrul B� Conţine unul din operanzii instrucţiunilor de

înmulţire şi împărţire

Page 22: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 22

Registre cu funcţii speciale (4)

Registrul PSW (Program Status Word)� Biţi de stare: CY, AC, OV, P� Bit de stare definit de utilizator: F0� Doi biţi pentru selecţia bancului de registre

Registrul DPTR (Data Pointer)� Constă din două registre de 8 biţi: DPH, DPL� Se utilizează pentru adresarea memoriei

externe

Page 23: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 23

Registre cu funcţii speciale (5)

Registrul SP (Stack Pointer)� Indicator de stivă� La resetare este iniţializat cu 07h� La execuţia instrucţiunilor PUSH şi CALL,

conţinutul SP este incrementat cu 1Registrul IE (Interrupt Enable)� Permite validarea/invalidarea întreruperilor� 5 surse de întrerupere: -INT0, -INT1, T0,

T1, portul serial

Page 24: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 24

Registre cu funcţii speciale (6)

Registrul IP (Interrupt Priority)� Permite setarea priorităţii întreruperilor� Prioritate înaltă sau scăzută

Registrele P0, P1, P2, P3� Conţin starea liniilor porturilor de I/E� Permit configurarea liniilor porturilor ca

intrări sau ieşiri � La resetare, toate liniile sunt configurate ca

intrări

Page 25: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 25

Registre cu funcţii speciale (7)

Registrele TL0/TH0 (Timer 0 Low/High)� Conţin valoarea contorului de timp T0

Registrele TL1/TH1 (Timer 1 Low/High)� Conţin valoarea contorului de timp T1

Registrul TMOD (Timer Mode)� Selectează modul de funcţionare al

contoarelor de timp T0 şi T1: 13 biţi; 16 biţi; 8 biţi cu auto-reîncărcare; două contoare independente de câte 8 biţi

Page 26: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 26

Registre cu funcţii speciale (8)

Registrul TCON (Timer Control)� Permite pornirea/oprirea contoarelor� Conţine biţi indicatori ai depăşirii

Registrul SBUF (Serial Port Buffer)� Conţine datele transmise şi recepţionate de

portul serialRegistrul SCON (Serial Port Control)� Conţine biţi pentru: selecţia modului;

starea transmisiei şi recepţiei

Page 27: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 27

Microcontrolere 8051

Arhitectura 8051Organizarea memorieiRegistre cu funcţii specialePorturi de I/E

Page 28: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 28

Porturi de I/E (1)

Porturile sunt bidirecţionaleFiecare port conţine: un registru (P0..P3); un driver de ieşire; un buffer de intrarePinii portului P3 sunt multifuncţionali� La aceşti pini se conectează şi semnalele

RXD, TXD, -INT0, -INT1, T0, T1, -WR, -RDControlul direcţiei unei linii de I/E: prin setarea bitului corespunzător al registrului Px� Ieşire: Px = 0 logic� Intrare: Px = 1 logic

Page 29: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 29

Porturi de I/E (2)

Page 30: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 30

Porturi de I/E (3)

Porturile P1, P2 şi P3 au rezistenţe interne pentru conectarea la tensiunea Vcc (pull-up)� Porturi cvasi-bidirecţionale

Portul P0 nu are o rezistenţă internă pull-up� Liniile P0 utilizate ca ieşiri sunt cu drenă

deschisă → port bidirecţional Porturile P0 şi P2 nu se pot utiliza ca I/E generale dacă este necesară adresarea unei memorii externe

Page 31: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 31

Page 32: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 32

256 bytes RAM12K FlashAT89S53

256 bytes RAM8K FlashAT89S8252

256 bytes RAM20K FlashAT89C55

256 bytes RAM8K FlashAT89C52

128 bytes RAM4K FlashAT89C51

128 bytes RAM4K FlashAT89C4051

128 bytes RAM2K FlashAT89C2051

64 bytes RAM1K FlashAT89C1051

Data memory sizeFlash memory sizeDevice name

Page 33: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 33

Page 34: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 34

Microcontrolere

Microcontrolere 8051Microcontrolere PICMicrocontrolere AVRMicrocontrolere MAXQMicrocontrolere DSP

Page 35: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 35

Microcontrolere PIC

Arhitectura PICOrganizarea memorieiPorturi de I/E

Page 36: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 36

Arhitectura PIC (1)

PIC – Programmable Interface Controller, redenumit în Programm. Intelligent ComputerMicrocontrolere produse de MicrochipTechnologySpaţii de adresare diferite pentru instrucţiuni şi date → arhitectură HarvardArhitectură RISCDiferite serii: PIC12, PIC16, PIC17, PIC18Date de 8 biţiInstrucţiuni de 12, 14 sau 16 biţi

Page 37: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 37

Arhitectura PIC (2)

Număr redus de instrucţiuni: între 33 (PIC12) şi ~80 (PIC18) Instrucţiuni simetrice (ortogonale)Instrucţiunile se execută într-un singur ciclu de instrucţiuni, cu excepţia salturilor (2 cicluri)� Un ciclu de instrucţiuni: 4 cicluri de ceas

Se utilizează suprapunerea fazelor de citire şi execuţie� Pipeline cu două etaje

Page 38: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 38

Arhitectura PIC (3)

Page 39: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 39

Arhitectura PIC (4)

Arhitectura PIC12F508/509

Page 40: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 40

Arhitectura PIC (5)

Instrucţiuni de 12 biţiFrecvenţa semnalului de ceas: 4 MHz� Durata ciclului de instrucţiune: 1 µs

Memorie de program� 512 x 12 (12F508), 1024 x 12 (12F509)

Memorie de date� 25 x 8 (12F508), 41 x 8 (12F509)

Toate registrele speciale (SFR) sunt mapateîn memoria de date

Page 41: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 41

Arhitectura PIC (6)

Registrele şi memoria de date pot fi adresate direct sau indirectUAL de 8 biţi� Adunare, scădere, deplasare, operaţii

logice� Registrul de lucru W → păstrează unul din

operanzi� Indicatori: C (Carry), DC (Digit Carry), Z

(Zero)

Page 42: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 42

Microcontrolere PIC

Arhitectura PICOrganizarea memorieiPorturi de I/E

Page 43: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 43

Organizarea memoriei (1)

Memoria de program� Memorie flash� Contor de program PC de 10 biţi (12F508)

sau 11 biţi (12F509) → spaţiu adresabil de 2 K x 12

� Sunt implementate numai primele 512 (12F508) sau 1024 (12F509) cuvinte

� La resetare, execuţia programului începe de la adresa 0000h

Page 44: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 44

Organizarea memoriei (2)

Memoria de date� În acest spaţiu sunt mapate registrele� Registre generale GPR (General Purpose

Register): � 12F508: 25 � 12F509: 9 + 32 accesibile pe bancuri prin

registrul FSR (File Select Register)

� Registre speciale SFR (Special FunctionRegister) utilizate pentru controlul UCP şi al perifericelor→ 7 registre

Page 45: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 45

Organizarea memoriei (3)

Registrele microcontrolerului PIC12F509

Page 46: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 46

Organizarea memoriei (4)

Stiva� Stivă hardware� Două cuvinte (12 biţi), Stack 1 şi Stack 2� Instrucţiunea CALL

� Stack 2 ← Stack 1� Stack 1 ← PC + 1

� Instrucţiunea RETLW� PC ← Stack 1� Stack 1 ← Stack 2

Page 47: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 47

Microcontrolere PIC

Arhitectura PICOrganizarea memorieiPorturi de I/E

Page 48: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 48

Porturi de I/E (1)

Porturi bidirecţionale PORTA, PORTB� PORTA: 5 linii de I/E� PORTB: 8 linii de I/E� PIC12F508/509 conţin numai PORTB (GPIO)

→ 6 liniiControlul direcţiei se realizează prin registrele TRIS (TRISA, TRISB)� Intrare: bitul din registrul TRIS setat la 1� Ieşire: bitul din registrul TRIS setat la 0

Page 49: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 49

Porturi de I/E (2)

Observaţii� Pinul RB3/GP3 poate fi utilizat numai

pentru intrare� După resetare, pinii sunt configuraţi ca

intrări� Pentru operaţiile de intrare, porturile nu

memorează datele� Pentru operaţiile de ieşire, datele sunt

memorate până la rescrierea lor

Page 50: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 50

Porturi de I/E (3)

Page 51: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 51

Page 52: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 52

Page 53: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 53

Page 54: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 54

Page 55: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 55

Page 56: Cuprins - masterat.fcim.utm.mdmasterat.fcim.utm.md/informatii/curs_sdc/scd04.pdf · 15.03.2015 Sisteme de calcul dedicate (04) 1 Cuprins 1. Introducere 2. Modele şi limbaje pentru

15.03.2015 Sisteme de calcul dedicate (04) 56