+ All Categories
Home > Documents > Proiectarea Microsistemelor Digitale Probleme

Proiectarea Microsistemelor Digitale Probleme

Date post: 07-Jul-2015
Category:
Upload: mihai-mujat
View: 392 times
Download: 2 times
Share this document with a friend
Popular Tags:

of 102

Transcript

Proiectarea Microsistemelor Digitale Aplica ie: S se conecteze la o UC cu microprocesorul 8086 n modul minim: 256 Kocte i memorie fix n zona superioar a spa iului de adrese; 256 Kocte i memorie SRAM la nceputul spa iului de adrese.

Solu ie: Se vor folosi 1 circuit Am27C2048 i 2 circuite A616316; Harta memoriei este: Circuit 1 A616316: 00000H 1FFFFH, Circuit 2 A616316: 20000H 3FFFFH, Am27C2048: C0000H FFFFFH. Se va face o decodificare complet .

1

Tabelul este:A 19 0 A 18 0 A 17 0 A 16 0

Proiectarea Microsistemelor DigitaleA 15 0 A 14 0 A 13 0 A 12 0 A 11 0 A 10 0 A 9 0 A 8 0 A 7 0 A 6 0 A 5 0 A 4 0 A 3 0 A 2 0 A 1 0 C

1 A

0

0

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

2 A

0

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

A m

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

2

Proiectarea Microsistemelor Digitale Schema este:

8

3

Proiectarea Microsistemelor Digitale Exemplu: s se conecteze la o UC cu 8086 8 blocuri de cte 64 ko, n zona 00000 0FFFFH Solu ia cu bistabile

4

Proiectarea Microsistemelor Digitale Codul: Pentru activarea primului bloc: MOV AL,0FEH OUT 00H,AL Pentru activarea celui de al doilea bloc: MOV AL,0FDH OUT 00H,AL Pentru activarea celui de al treilea bloc: MOV AL,0FBH OUT 00H,AL . . Pentru activarea ultimului bloc: MOV AL,7FH OUT 00H,AL

5

Proiectarea Microsistemelor Digitale Solu ia cu bistabile i decodificator: Varianta cu bistabile i decodificator necesit mai pu ine bistabile; Ie irile bistabilelor se conecteaz la intr rile unui decodificator iar ie irile decodificatorului vor fi componente ale semnalelor de selec ie ale circuitelor de memorie. Avantaje: num r mai mic de circuite pentru partea de comand dar acest avantaj exist doar dac num rul de blocuri este mare i depinde de num rul de ie iri ale decodificatorului i, mai ales, protec ie asigurat circuitelor de memorie: oricare ar fi configura ia nscris n bistabile, doar o ie ire a decodificatorului va fi activ la un moment dat deci nu exist riscul conflictului pe magistral ; din acela i motiv nu necesit nici ini ializare ca urmare nu este necesar ca bistabilele s aib accesibile intr rile asincrone.

Dezavantaj: Num r mai mare de circuite pentru pu ine blocuri; Se recomand doar la num r mare de blocuri.

6

Proiectarea Microsistemelor Digitale Acela i exemplu, solu ia cu bistabile i decodificator:

7

Proiectarea Microsistemelor Digitale Codul: Pentru activarea primului bloc: MOV AL,0F8H OUT 00H,AL Pentru activarea celui de al doilea bloc: MOV AL,0F9H OUT 00H,AL Pentru activarea celui de al treilea bloc: MOV AL,0FAH OUT 00H,AL . . Pentru activarea ultimului bloc: MOV AL,0FFH OUT 00H,AL

8

Proiectarea Microsistemelor Digitale4.4.2. S se proiecteze un modul digital, conectat la o UC cu 8086, pentru citirea a 16 intr ri digitale i comanda a 16 ie iri digitale. Ie irile trebuiesc memorate. Pentru comanda ie irilor sunt necesare 2 circuite registru, 74x373 Intr rile lor vor fi legate la magistrala de date; nc rcarea n registre este comandat de ie iri dintr un decodificator de porturi.

Pentru citirea intr rilor sunt necesare 2 circuite cu por i cu 3 st ri, 74x244 Ie irile por ilor sunt legate la magistrala de date; Validarea por ilor este comandat de ie iri dintr un decodificator de porturi.

Un decodificator de porturi va comanda registrele i por ile cu 3 st ri; Extinderea este limitat de decodificator.

9

Proiectarea Microsistemelor Digitale Schema este:

10

Proiectarea Microsistemelor Digitale Codul: Citirea intr rilor INTR7 0: IN AL,00H ; n AL avem configura ia de la intr rile INTR07 0; prin mascare se poate re ine doar una dintre intr ri; Citirea intr rilor INTR15 8: IN AL,21H ; n AL avem configura ia de la intr rile INTR15 8; prin mascare se poate re ine doar una dintre intr ri; O anume intrare poate fi ob inut i rotind informa ia din AL prin C: IN AL,00H RCR AL,1 ; n C avem INTR0 Sau IN AL,00H RCL AL,1 ; n C avem INTR7

11

Proiectarea Microsistemelor Digitale Comanda ie irilor IES7 - 0:MOV OUT MOV OUT MOV OUT MOV OUT AL,00H 40H,AL ; ie irile IES0 7 au fost comandate la 0 logic; AL,0FFH 40H,AL ; ie irile IES0 7 au fost comandate la 1 logic; AL,00H 61H,AL ; ie irile IES15 8 au fost comandate la 0 logic; AL,0FFH 61H,AL ; ie irile IES15 8 au fost comandate la 1 logic;

Comanda ie irilor IES7 - 0:

Comanda ie irilor IES15 - 8:

Comanda ie irilor IES15 - 8:

Pot fi folosite acelea i ie iri ale celor 2 decodificatoare? Cum se modific schema dac se folose te un singur decodificator?

12

Proiectarea Microsistemelor Digitale Aplica ii:

S se proiecteze o interfa serial cu circuitul 8251, conectat la o UC cu 8086, transferul f cndu se prin program. Datele ini iale ale transferului sunt: 8 bi i de date, F r paritate, 2 bi i de STOP, Factor de multiplicare 16, Rata de transfer: 9600 bps. Se vor prezenta: Schema interfe ei, Rutina de programare a circuitului specializat, Rutinele de emisie i recep ie.

13

Proiectarea Microsistemelor Digitale Schema interfe ei:

14

Proiectarea Microsistemelor Digitale Adresele de port: 00H pentru date i 02H pentru comenzi/ st ri; Rutina de programare: MOV AL,0CEH ; cuvnt de mod OUT 02H,AL MOV AL,15H ; cuvnt de comand OUT 02H,AL Rutina de transmisie caracter: TR: IN AL,02H ; citire i testare rang TxRDY din cuvntul de stare RCR AL,1 JNC TR MOV AL,CL ; se preia data din registrul CL OUT 00H,AL RET

15

Proiectarea Microsistemelor Digitale Rutina de recep ie caracter: REC: IN AL,02H ; citire i testare rang RxRDY din cuvntul de stare RCR AL,2 JNC REC IN AL,00H ; se preia data de la 8251 MOV CL,AL ; se depune data n registrul CL RET Solu ia prezentat realizeaz transferul serial prin program. Dezavantaj: utilizarea ineficient a timpului microprocesorului, ntruct acesta va trebui s a tepte mult timp pn cnd circuitul 8251 poate realiza un transfer. Alternativa o constituie transferul serial prin ntreruperi, n care microprocesorul execut un program i va fi ntrerupt de circuitul 8251 doar cnd acesta poate realiza un transfer. Se vor utiliza terminalele RxRDY i TxRDY.

16

Proiectarea Microsistemelor Digitale Aplica ii:

S se proiecteze un modul, bazat pe circuitul 8253, la care contorul 0 s comande intr rile /RXC i /TXC ale unui circuit 8251, trebuind s genereze un semnal cu frecven a de 9600 x 16 = 153600 Hz iar contorul 1 s anun e microprocesorul apari ia de 50 ori a unui eveniment. Apari iile evenimentului sunt aduse la cuno tin a circuitului de un traductor care genereaz 100 impulsuri cu caracteristici TTL i perioad de 400 ns pentru o apari ie.

17

Proiectarea Microsistemelor Digitale Schema interfe ei:

18

Proiectarea Microsistemelor Digitale Adresele de port: 20H pentru contorul 0, 22H pentru contorul 1 i 26H pentru RCC.

Modurile de lucru: 3 pentru contorul 0 i 0 pentru contorul 1.

Constantele: 2 457 600/ 153 600 = 16 pentru contorul 0, 1388H = 5000D pentru contorul 1.

19

Proiectarea Microsistemelor Digitale Programarea celor 2 contoare:MOV OUT MOV OUT MOV OUT MOV OUT MOV OUT AL,16H ; cuvntul de comand pentru contorul 0 26H,AL AL,10H ; constanta pentru contorul 0 20H,AL AL,70H ; cuvntul de comand pentru contorul 1 26H,AL AL,88H ; octetul c.m.p.s. al constantei pentru contorul 0 22H,AL AL,13H ; octetul c.m.s. al constantei pentru contorul 1 22H,AL

ntruct se folose te intrarea de ntrerupere mascabil a microprocesorului, este necesar ca sistemul de ntreruperi s fie activat, dup programarea contorului 1. De asemenea este necesar ca ie irea contorului 1 s fie dezactivat naintea reactiv rii sistemului de ntreruperi pentru a evita luarea n considerare multipl a aceleia i cereri.20

Proiectarea Microsistemelor Digitale Aplica ii: S se proiecteze o interfa paralel care s lucreze n conformitate cu dialogul de tip CENTRONIX. Dialogul de tip CENTRONIX:

21

Proiectarea Microsistemelor Digitale Schema interfe ei:

22

Proiectarea Microsistemelor Digitale Adresele de port: 40H pentru portul A, 42H pentru portul B, 44H pentru portul C i 46H pentru RCC.

Modurile de lucru: 0 ie ire pentru portul A, 0 ie ire pentru portul B i 0 intrare pentru portul C inferior.

Rutina de programare:MOV OUT AL,81H 46H,AL

23

Proiectarea Microsistemelor Digitale Rutina de transmisie paralel :PAR: IN RCR JC MOV OUT OR OUT AND OUT OR OUT RET AL,44H ; citire i testare BUSY AL,1 PAR AL,CL ; se preia caracterul din registrul CL 40H,AL AL,01H 42H,AL ; /STB = 1 AL,00H 42H,AL ; /STB = 0 AL,01H 42H,AL ; /STB = 1

Rutina ncepe prin citirea i testarea liniei BUSY pentru a vedea dac receptorul este liber. Microprocesorul a teapt pn cnd receptorul este liber i apoi trimite data, activnd i dezactivnd semnalul /STB.

24

Proiectarea Microsistemelor Digitale5.4. Aplica ii

5.4.1. S se proiecteze o interfa serial pe 2 canale, cu 2 circuite 8251, la o unitate central cu microprocesorul 8086, cu urm toarele date ini iale: 8 bi i de date, paritate impar , 2 bi i de stop, factor 16, viteza de transfer 9600 bps pentru canalul 1 i 8 bi i de date, paritate par , 1 bit de stop, factor 16, viteza de transfer 2400 bps pentru canalul 2. Circuitele 8251 vor fi comandate de un circuit 8253. Se va desena schema i se vor scrie rutinele de programare i rutinele de baz de transfer.

25

Proiectarea Microsistemelor Digitale Schema interfe ei:

26

Proiectarea Microsistemelor Digitale Adresele de port: 00H pentru portul de date al primului circuit 8251, 02H pentru portul de comenzi/ st ri al primului circuit 8251, 20H pentru portul de date al celui de-al doilea circuit 8251, 22H pentru portul de comenzi/ st ri al celui de-al doilea circuit 8251, 40H pentru contorul 0 al circuitului 8253, 42H pentru contorul 1 al circuitului 8253, 46H pentru Registrul Cuvntului de Comand al circuitului 8253.

Modul de lucru pentru contoarele circuitului 8251: 3 Constantele: 2 457 600/ 153 600 = 16 pentru contorul 0, 2 457 600/ 38 400 = 64 pentru contorul 1.

27

Proiectarea Microsistemelor Digitale

Rutina de programare a primului circuit 8251:MOV OUT MOV OUT AL,0FEH ; cuvnt de mod 02H,AL AL,15H ; cuvnt de comand 02H,AL

Rutina de programare a celui de-al doilea circuit 8251:MOV OUT MOV OUT AL,5EH ; cuvnt de mod 22H,AL AL,15H ; cuvnt de comand 22H,AL

28

Proiectarea Microsistemelor Digitale Rutina de programare a circuitului 8253:MOVAL,16H ; cuvntul de comand pentru contorul 0 OUT 46H,AL MOVAL,10H ; constanta pentru contorul 0 OUT 40H,AL MOVAL,56H ; cuvntul de comand pentru contorul 1 OUT 46H,AL MOVAL,40H ; constanta pentru contorul 1 OUT 42H,AL

29

Proiectarea Microsistemelor Digitale Rutina de transmisie caracter, primul circuit 8251:TR: IN RCR JNC MOV OUT RET AL,02H ; citire i testare rang TxRDY din cuvntul de stare AL,1 TR AL,CL ; se preia data din registrul CL 00H,AL

Rutina de recep ie caracter, primul circuit 8251:REC: IN RCR JNC IN MOV RET AL,02H ; citire i testare rang RxRDY din cuvntul de stare AL,2 TR AL,00H ; se preia data de la 8251 CL,AL ; se depune data n registrul CL

30

Proiectarea Microsistemelor Digitale Rutina de transmisie caracter, al doilea circuit 8251:TR: IN RCR JNC MOV OUT RET AL,22H ; citire i testare rang TxRDY din cuvntul de stare AL,1 TR AL,CL ; se preia data din registrul CL 20H,AL

Rutina de recep ie caracter, al doilea circuit 8251:REC: IN RCR JNC IN MOV RET AL,22H ; citire i testare rang RxRDY din cuvntul de stare AL,2 TR AL,20H ; se preia data de la 8251 CL,AL ; se depune data n registrul CL

31

Proiectarea Microsistemelor Digitale

5.4.2. S se proiecteze o interfa serial cu circuitul 8251, la o unitate central cu microprocesorul 8086, cu urm toarele date ini iale: viteza perifericului 2400 bps, factor de multiplicare 16, 7 bi i de date, f r paritate,1 bit de STOP. Interfa a va lucra prin ntreruperi i va fi comandat de un circuit 8253. Se vor prezenta: schema, rutinele de programare, rutinele de transfer, solu ia prin care microprocesorul ajunge la rutinele de tratare.

32

Proiectarea Microsistemelor Digitale Schema interfe ei:

33

Adresele de port:

Proiectarea Microsistemelor Digitale

20H pentru portul de date al circuitului 8251, 22H pentru portul de comenzi/ st ri al circuitului 8251, 00H pentru contorul 0 al circuitului 8253, 06H pentru Registrul Cuvntului de Comand al circuitului 8253.

Modul de lucru pentru contorul 0 al circuitului 8251: 3 Constanta: 2 457 600/ 38 400 = 64.

34

Rutina de programare a circuitului 8251:MOV OUT 22H,AL MOV OUT 22H,AL AL,4AH ; cuvnt de mod AL,15H ; cuvnt de comand

Proiectarea Microsistemelor Digitale

Rutina de programare a circuitului 8253:MOV AL,16H ; cuvntul de comand pentru contorul 0OUT 06H,AL MOVAL,10H ; constanta pentru contorul 0 OUT 00H,AL

35

Proiectarea Microsistemelor Digitale Transferul unui caracter va avea loc n cadrul rutinei de tratare a cererii de ntrerupere. ntruct exist 2 surse pentru cereri de ntrerupere, microprocesorul va trebui s identifice sursa. Opera ia se va realiza la nceputul rutinei de tratare a cererii prin citirea octetului de stare i prin verificarea rangului RXRDY. Dac acesta are valoarea 1 nseamn c sursa este recep ia iar dac are valoarea 0 atunci sursa este transmisia. Recep ia i transmisia caracterului se vor face rapid f r ca microprocesorul s a tepte asamblarea unui caracter, respectiv golirea tamponului de ie ire. Accesul procesorului la rutina de tratare a cererii de ntrerupere se va face prin intermediul unui vector generat de o logic de ntrerupere (de obicei circuitul 8259A); vectorul va duce la o intrare n tabela vectorilor de ntrerupere.

36

Proiectarea Microsistemelor Digitale Rutina de tratare a cererii de ntrerupere:SER: IN AL,22H ; citire i testare rang RxRDY din cuvntul de stare RCR AL,2 JNC REC ; transmisia MOV AL,CL OUT 20H,AL ; se scrie data la 8251 EI ; reactivare a sistemului de ntreruperi RET ; recep ia REC:IN AL,00H ; se preia data de la 8251 MOV CL,AL ; se depune data n registrul CL EI ; reactivare a sistemului de ntreruperi RET

37

Proiectarea Microsistemelor Digitale

5.4.3. S se proiecteze un modul care anun microprocesorul 8086 c un eveniment extern a ap rut de 1000 ori. O apari ie este anun at microprocesorului prin un tren de 500 impulsuri cu caracteristici TTL. Se va utiliza un circuit 8253.

38

Proiectarea Microsistemelor Digitale Schema modulului:

39

Proiectarea Microsistemelor Digitale Se consider c exist un traductor ntre eveniment i circuitul 8253 care genereaz 500 impulsuri cu caracteristici TTL la o apari ie a evenimentului. Constanta de programare este: 1000 x 500 = 500000 i este prea mare i nu ncape n un contor al circuitului 8253. Se vor folosi contoarele 0 i 1, nseriate, iar constantele de divizare vor fi: 1000D = 03E8H pentru contorul 0 i 500D = 01F4H pentru contorul 1.

Ie irea contorului 0 va constitui intrare de tact pentru contorul 1. Ie irea contorului 1 poate fi surs pentru cerere de ntrerupere sau poate fi citit , prin program, de c tre microprocesor. Se va folosi: modul 3 pentru contorul 0 i modul 0 pentru contorul 1.

40

Proiectarea Microsistemelor Digitale Adresele de port: 00H pentru contorul 0 al circuitului 8253, 02H pentru contorul 1 al circuitului 8253, 06H pentru Registrul Cuvntului de Comand al circuitului 8253.

Programarea:MOV AL,36H ;cuvntul de comand pentru contorul 0 OUT 06H,AL MOV AL,0E8H ; octetul c.m.p.s. al constantei pentru contorul 0 OUT 00H,AL MOV AL,03H ; octetul c.m.s. al constantei pentru contorul 0 OUT 00H,AL MOV AL,70H ;cuvntul de comand pentru contorul 1 OUT 06H,AL MOV AL,0F4H ; octetul c.m.p.s. al constantei pentru contorul 1 OUT 02H,AL MOV AL,01H ; octetul c.m.s. al constantei pentru contorul 1 OUT 02H,AL41

Proiectarea Microsistemelor Digitale

5.4.4. S se comande 32 semnale de ie ire de c tre un microprocesor 8086. Se vor utiliza circuite 8255.

42

Proiectarea Microsistemelor Digitale Schema modulului:

43

Proiectarea Microsistemelor Digitale Adresele de port: 00H pentru portul PA al primului circuit 8255, 02H pentru portul PB al primului circuit 8255, 06H pentru Registrul Cuvntului de Comand al primului circuit 8255, 20H pentru portul PA al celui de-al doilea circuit 8255, 22H pentru portul PB al celui de-al doilea circuit 8255, 26H pentru Registrul Cuvntului de Comand al celui de-al doilea circuit 8255.

Modurile de lucru: 0 ie ire

44

Proiectarea Microsistemelor Digitale Programarea celor 2 circuite 8255:MOV OUT OUT AL,80H 06H,AL 26H,AL

Pentru a pozi iona o ie ire va trebui scris configura ia corespunz toare la portul unde este conectat respectiva ie ire. De exemplu, pentru ca s existe urm toarea configura ie: IES0 = IES2 = IES4 = IES6 = 0, IES1 = IES3 = IES5 = IES7 = 1 va trebui executat urm toarea secven :MOV OUT AL,0AAH 01H,AL.

45

Proiectarea Microsistemelor Digitale Dac se dore te pozi ionarea unei singure ie iri, f r a le afecta pe celelalte va fi necesar modificarea program rii circuitului. Portul la care este conectat ie irea va trebui s fie pozi ionat ca intrare, apoi se va citi combina ia de la respectivul port, se va modifica combina ia, portul va fi programat ca ie ire i apoi se va scrie combina ia la respectivul port. De exemplu, dac se dore te pozi ionarea ie irii IES0 la 1 logic, f r afectarea celorlalte, va trebui executat urm toarea secven :MOV OUT IN OR MOV MOV OUT MOV OUT AL,82H 06H,AL ;portul B din primul 8255 este pozi ionat ca intrare AL,02H AL,01H CL,AL AL,80H 06H,AL ;portul B din primul circuit 8255 este ie ire AL,CL 02H,AL ,se pozi ioneaz ie irea dorit46

Proiectarea Microsistemelor Digitale Aplica ie: s se scrie programul pentru transferul a 512 cuvinte de la un port n memorie, ncepnd cu adresa 11000H. Se va folosi canalul 0 al unui controler DMA. Se presupune c intrarea /CS a circuitului 82C37A este comandat de ie irea unui decodificator, corespunz toare combina iei: A7 = 0, A6 = 1, A5 = 0, A4 = 0; Cei 4 bi i mai semnificativi ai adresei vor fi furniza i de un Page Register independent de controler; Programul va con ine secven a de ini ializare a canalului 0 i apoi a teptarea ncheierii transferului; Programul ncepe cu o scriere la Command Register pentru a dezactiva circuitul, apoi nc rcarea registrelor de cuvnt i adrese ale canalului 0, apoi o scriere la Mode Register, la Mask Register i la Command Register. Dup aceste opera ii transferul va ncepe i se va citi continuu Status Register pentru a afla cnd s-a activat TC corespunz tor canalului 0.

47

Proiectarea Microsistemelor Digitale Programul:MOV AL,0A4H OUT 48H,AL ; write command register pentru dezactivarea circuitului MOV AX,1000H OUT 40H,AL MOV AL,AH OUT 40H,AL ; scriere adres MOV AX,01FFH OUT 41H,AL MOV AL,AH OUT 41H,AL ; scriere dat MOV AL,84H OUT 4BH,AL ; scriere mode register MOV AL,00H OUT 4AH,AL ; scriere mask register (doar pentru canalul 0)

48

Proiectarea Microsistemelor DigitaleMOV AL,0A0H OUT 48H,AL ; write command register ; transferul ncepe VER: IN AL,48H ; citire status register AND AL,01H JZ VER ; transferul s-a ncheiat.

49

Proiectarea Microsistemelor Digitale

8. Aplica ii8.1. Conectarea elementelor de afi are la o UC8.1.1. Conectarea LED urilor LED (Light Emitting Diode): diod luminiscent Diverse forme

50

Proiectarea Microsistemelor Digitale i culori

Anodul este terminalul mai lung iar catodul este terminalul mai scurt; Vedere de jos: catodul este te it; Exist i diode bicolore: au 3 terminale; Parametri electrici (LED-urile cu diametrul de 3 - 5 mm): Curent: 10 mA, C dere de tensiune: 1,6 V (LED ro u) 3,5 V (LED alb)

51

Proiectarea Microsistemelor Digitale Conectarea la o UC se face prin intermediul unui port de ie ire; Poate fi un bistabil sau un registru.

a b n solu ia a s-a folosit un bistabil n tehnologie TTL, ca urmare comanda va fi n 0 (IOL = 16 mA, IOH = 0,8 mA); Secven a ca LED ul s lumineze este:MOV OUT 00H,AL AL,00H

52

Proiectarea Microsistemelor Digitale

Secven a ca LED ul s nu lumineze este:MOV AL,01H OUT 00H,AL

n varianta b bistabilul este n tehnologie HCT, ca urmare comanda se poate face fie n 0 fie n 1; Secven a ca LED ul s lumineze (comand n 1):MOV AL,01H OUT 00H,AL

Secven a ca LED ul s nu lumineze (comand n 1):MOV AL,00H OUT 00H,AL

Dimensionarea rezisten ei (s-a considerat LED ul ro u): R = (5 1,6 0,2) V / 10 mA = 320 , valoarea uzual fiind 330

53

Proiectarea Microsistemelor Digitale Conectarea a 8 LED uri:

Secven a ca LED urile s lumineze:MOV OUT 20H,AL MOV OUT 20H,AL AL,00H

Secven a ca LED ul s nu lumineze:AL,0FFH

54

Proiectarea Microsistemelor Digitale Conectarea a 64 LED uri:

Secven a ca LED urile 9 16 s lumineze:MOV OUT 20H,AL MOV OUT 40H,AL AL,00H

Secven a ca LED urile 17 24 s nu lumineze:AL,0FFH

55

Proiectarea Microsistemelor Digitale8.1.2. Conectarea afi ajelor cu segmente Un circuit afi aj cu segmente cu 1 rang = 8 leduri conectate mpreun plus unul pentru punct. Diferite forme i dimensiuni:

56

Proiectarea Microsistemelor Digitale Exist

i circuite cu mai multe ranguri integrate:

Fiecare segment este accesibil la un terminal:

57

Proiectarea Microsistemelor Digitale Exist 2 tipuri: Cu anod comun: schema echivalent :

Cu catod comun: schema echivalent :

58

Comanda:

Proiectarea Microsistemelor Digitale

Anod comun: cu 0, Catod comun: cu 1.

Pentru a afi a este necesar crearea configura iei corespunz toare cifrei care se dore te a se afi a; 2 solu ii: hardware i software. Solu ia hardware: Utilizeaz circuite convertor BCD 7 segmente (de ex. SN 7447); Cere un registru pentru memorarea configura iei BCD, un convertor iar componenta software este f. simpl ; Dezavantaj: limit rile introduse de circuitele convertor.

Solu ia software: Permite afi area oric rei configura ii care se poate forma cu 7 segmente, Cere un registru, Software mai dezvoltat ntruct este necesar crearea configura iei prin program.59

Comanda unui modul de afi are cu segmente cu mai multe ranguri: Solu ia nemultiplexat , Solu ia multiplexat .

Proiectarea Microsistemelor Digitale

Solu ia nemultiplexat : Cere un registru pentru fiecare rang, Registrele vor fi comandate ca porturi de ie ire i vor memora configura iile care se vor afi a, Comanda n 0 sau 1 n func ie de tehnologia registrelor i de tipul de circuit afi aj (cu anod sau catod comun), Componenta software simpl , Avantaje: software simplu, u or de extins, Dezavantaje: num r mare de circuite, num r mare de rezisten e, consum mare.

60

Proiectarea Microsistemelor Digitale Conectarea unui modul de afi are cu segmente cu 4 ranguri:

61

Proiectarea Microsistemelor Digitale Secven e pentru afi area caracterelor hexazecimale: Afi area cifrei 0 pe primul rang: MOV AL,0C0H OUT 00H,AL Afi area cifrei 2 pe primul rang: MOV AL,0A2H OUT 00H,AL Afi area cifrei 4 pe al 2 - lea rang: MOV AL,99H OUT 20H,AL Afi area cifrei 5 pe al 2 lea rang: MOV AL,92H OUT 20H,AL Afi area cifrei 6 pe al 2 - lea rang: MOV AL,82H OUT 20H,AL

62

Proiectarea Microsistemelor Digitale Afi area cifrei 8 pe al 3 - lea rang: MOV AL,80H OUT 40H,AL Afi area cifrei 9 pe al 3 - lea rang: MOV AL,90H OUT 40H,AL Afi area cifrei A pe al 3 - lea rang: MOV AL,88H OUT 40H,AL Afi area cifrei C pe al 4 lea rang: MOV AL,0C9H OUT 60H,AL Afi area cifrei E pe al 4 - lea rang: MOV AL,89H OUT 60H,AL63

Proiectarea Microsistemelor Digitale Solu ia multiplexat : Se bazeaz pe iner ia ochiului uman: imaginile care se succed cu o rat mai mare de 25 ori/ sec. dau impresia de mi care continu ; Exist un singur registru pentru memorarea configura iei care se va afi a, indiferent de num rul de ranguri; Este necesar comanda aliment rii circuitelor afi aj; Va exista cte un bistabil pentru fiecare rang care va comanda un tranzistor plasat pe alimentare sau pe mas n func ie de tipul circuitului afi aj (cu anod sau cu catod comun); Componenta software va trebui s asigure afi area cu o rat mai mare ca 25 ori/ sec., succesiv i ciclic; Componenta software va trebui s asigure concordan a ntre con inutul registrului i afi ajul care este alimentat; Avantaje: minim de hardware, num r minim de rezisten e, consum minim; Dezavantaje: software complex, utilizarea ntreruperilor.

64

Proiectarea Microsistemelor Digitale Conectarea unui modul de afi are cu segmente prin multiplexare:

65

Proiectarea Microsistemelor Digitale 8.2. Conectarea comutatoarelor la o UC Solu ii pentru conectarea unui comutator:

a Secven a pentru solu ia a:IN AL,00H AND AL,80H JZ SUS ; ramura corespunz toare pozi iei din figur ; ramura corespunz toare pozi iei contrare

b

66

Proiectarea Microsistemelor Digitale Secven a pentru solu ia b:IN AL,00H AND AL,80H JNZ SUS ; ramura corespunz toare pozi iei din figur ; ramura corespunz toare pozi iei contrare

Conectarea a 8 comutatoare:

Problema vibra iilor67

Proiectarea Microsistemelor Digitale 8.3. Conectarea unei minitastaturi mecanice Are o structur matricial , la intersec ia liniilor i coloanelor g sindu se tastele:

Este necesar un port de ie ire cu posibilitate de memorare (registru) i un port de intrare (por i cu 3 st ri); Se baleiaz coloanele cu un singur 0 i se citesc liniile; Este posibil i solu ia invers : baleierea liniilor i citirea coloanelor; Pentru protec ia ie irilor portului de ie ire se conecteaz diode; ridic nivelul de 0 ca urmare se recomand diode cu germaniu;68

Proiectarea Microsistemelor Digitale Conectarea la o UC:

69

Programul:

Proiectarea Microsistemelor Digitalei se verific dac s-au ac ionat tastele 1, 4, 7, *

; se pune 0 pe prima coloan REIA: MOV AL,0FEH OUT 00H,AL IN AL,20H AND AL,01H JZ TASTA1 IN AL,20H AND AL,02H JZ TASTA4 IN AL,20H AND AL,04H JZ TASTA7 IN AL,20H AND AL,08H JZ TASTA *

70

Proiectarea Microsistemelor Digitale; se pune 0 pe a 2-a coloan i se verific dac s-au ac ionat tastele 2, 5, 8, 0MOV OUT 00H,AL IN AL,20H AND AL,01H JZ TASTA2 IN AL,20H AND AL,02H JZ TASTA5 IN AL,20H AND AL,04H JZ TASTA8 IN AL,20H AND AL,08H JZ TASTA0 AL,0FDH

71

Proiectarea Microsistemelor Digitale; se pune 0 pe a 3-a coloan i se verific dac s-au ac ionat tastele 3, 6, 9, #MOV OUT 00H,AL IN AL,20H AND AL,01H JZ TASTA3 IN AL,20H AND AL,02H JZ TASTA6 IN AL,20H AND AL,04H JZ TASTA9 IN AL,20H AND AL,08H JZ TASTAB AL,0FBH

72

Proiectarea Microsistemelor Digitale; se reia baleierea JMP REIA ........................................ ........................................ ; tratarea ac ion rii tastei 1 TASTA1: CALL DELAY ; se a teapt stabilizarea contactelor AST1: IN AL,20H ; se cite te din nou linia i se a teapt dezactivarea ;tastei AND AL,01H JZ AST1 CALL DELAY ; opera ia corespunz toare ac ion rii tastei 1 ............................. ............................. JP .......

73

Proiectarea Microsistemelor Digitale

8.4. Probleme8.4.1. S se conecteze o minitastatur cu 12 contacte i un modul de afi are cu segmente cu 1 rang la o unitate central cu microprocesorul 8086. Dac se apas tasta 0 se va afi a caracterul 0, dac se apas tasta 1 se va afi a caracterul 1, . a. m. d. Se vor prezenta schema i programele necesare.

Solu ia:Pentru conectarea minitastaturii este necesar un registru i un circuit cu por i cu 3 st ri; Pentru conectarea afi ajului cu segmente este necesar un registru; Pentru ca un segment s lumineze trebuie generat 0 logic pe ie irea corespunz toare a registrului.

74

Proiectarea Microsistemelor Digitale Schema:

75

Proiectarea Microsistemelor Digitale

Programul:REIA: MOV AL,0FEH OUT 00H,AL ;se pune 0 logic pe prima coloan a tastaturii IN AL,20H ;se cite te tastatura AND AL,01H JZ TASTA1 IN AL,20H AND AL,02H JZ TASTA4 IN AL,20H AND AL,04H JZ TASTA7 IN AL,04H AND AL,08H JZ TASTA*76

Proiectarea Microsistemelor DigitaleMOV AL,0FDH OUT 00H,AL ;se pune 0 logic pe a 2-a coloan a tastaturii IN AL,20H ;se cite te tastatura AND AL,01H JZ TASTA2 IN AL,20H AND AL,02H JZ TASTA5 IN AL,20H AND AL,04H JZ TASTA8 IN AL,04H AND AL,08H JZ TASTA0

77

Proiectarea Microsistemelor DigitaleMOV AL,0FBH OUT 00H,AL ;se pune 0 logic pe a 3-a coloan a tastaturii IN AL,20H ;se cite te tastatura AND AL,01H JZ TASTA3 IN AL,20H AND AL,02H JZ TASTA6 IN AL,20H AND AL,04H JZ TASTA9 IN AL,04H AND AL,08H JZ TASTA# JP REIA78

Proiectarea Microsistemelor DigitaleTASTA1: CALL TIM ;se a teapt oprirea vibra iilor TAS1: IN AL,20H AND AL,01H JZ TAS1 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,0F9H OUT 40H,AL ;se afi eaz cifra 1 JP REIA ; tasta 4 TASTA4: CALL TIM ;se a teapt oprirea vibra iilor TAS4: IN AL,20H AND AL,02H JZ TAS4 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,99H OUT 40H,AL ;se afi eaz cifra 4 JP REIA79

Proiectarea Microsistemelor Digitale.......................... TASTA9: CALL TIM ;se a teapt oprirea vibra iilor TAS9: IN AL,20H AND AL,04H JZ TAS9 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,90H OUT 40H,AL ;se afi eaz cifra 9 JP REIA ; tasta # TASTA#: CALL TIM ;se a teapt oprirea vibra iilor TAS#: IN AL,20H AND AL,08H JZ TAS# ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,19H OUT 40H,AL ;se afi eaz caracterul H JP REIA80

Proiectarea Microsistemelor Digitale8.4.2. S se conecteze la o unitate central cu microprocesorul 8086, un modul de afi are cu segmente cu 16 ranguri. Se va scrie cte o rutin pentru afi area cte unei cifre hexazecimale pe fiecare rang.

Solu ia:Vor fi necesare 16 registre pentru a memora configura iile care se vor afi a. ntruct afi ajele sunt cu anod comun, pentru ca un segment s lumineze este necesar 0 logic pe ie irea care l comand . Cele 16 registre vor fi comandate ca porturi de ie ire.

81

Proiectarea Microsistemelor Digitale Schema:

82

Rutinele pentru afi area pe fiecare rang:;se va afi a cifra 0 pe primul rang: MOV AL,0C0H OUT 00H,AL ;se va afi a cifra 1 pe al 2 - lea rang: MOV AL,0F9H OUT 10H,AL ;se va afi a cifra 2 pe al 3 - lea rang: MOV AL,0A4H OUT 20H,AL ;se va afi a cifra 3 pe al 4 - lea rang: MOV AL,0B0H OUT 30H,AL ;se va afi a cifra 4 pe al 5 - lea rang: MOV AL,99H OUT 40H,AL

Proiectarea Microsistemelor Digitale

83

;se va afi a cifra 5 pe al 6 lea rang: MOV AL,92H OUT 50H,AL ;se va afi a cifra 6 pe al 7 - lea rang: MOV AL,82H OUT 60H,AL ;se va afi a cifra 7 pe al 8 - lea rang: MOV AL,0F8H OUT 70H,AL ;se va afi a cifra 8 pe al 9 - lea rang: MOV AL,80H OUT 80H,AL ;se va afi a cifra 9 pe al 10 - lea rang: MOV AL,90H OUT 90H,AL

Proiectarea Microsistemelor Digitale

84

Proiectarea Microsistemelor Digitale;se va afi a cifra A pe al 11 lea rang:

MOV AL,88H OUT A0H,AL ;se va afi a cifra b pe al 12 - lea rang: MOV AL,83H OUT B0H,AL ;se va afi a cifra C pe al 13 - lea rang: MOV AL,0C6H OUT C0H,AL ;se va afi a cifra d pe al 14 - lea rang: MOV AL,0A1H OUT D0H,AL ;se va afi a cifra E pe al 15 - lea rang: MOV AL,86H OUT E0H,AL

85

Proiectarea Microsistemelor Digitale;se va afi a cifra F pe al 16 - lea rang: MOV AL,0A6H OUT F0H,AL

8.4.3. S se conecteze 16 comutatoare distincte i un circuit de afi are cu segmente cu 1 rang la o unitate central cu microprocesorul 8086. Dac se apas comutatorul 0 se afi eaz cifra 0, dac se apas comutatorul 1 se afi eaz cifra 1 . a. m. d.

Solu ia: Sunt necesare 2 circuite cu por i cu 3 st ri pentru a citi starea comutatoarelor precum i un registru pentru a memora configura ia care se va afi a.

86

Proiectarea Microsistemelor Digitale Schema:

87

Proiectarea Microsistemelor Digitale Programul:REIA: IN AL,20H ;se citesc primele 8 comutatoare AND AL,01H JZ COM0 ;s-a ac ionat comutatorul 0 IN AL,20H AND AL,02H JZ COM1 ;s-a ac ionat comutatorul 1 IN AL,20H AND AL,04H JZ COM2 ;s-a ac ionat comutatorul 2 IN AL,20H AND AL,08H JZ COM3 ;s-a ac ionat comutatorul 3 IN AL,20H AND AL,10H JZ COM4 ;s-a ac ionat comutatorul 488

Proiectarea Microsistemelor DigitaleIN AL,20H AND AL,20H JZ COM5 ;s-a ac ionat comutatorul 5 IN AL,20H AND AL,40H JZ COM6 ;s-a ac ionat comutatorul 6 IN AL,20H AND AL,80H JZ COM7 ;s-a ac ionat comutatorul 7 IN AL,40H ;se citesc urm toarele 8 comutatoare AND AL,01H JZ COM8 ;s-a ac ionat comutatorul 8 IN AL,02H AND AL,02H JZ COM9 ;s-a ac ionat comutatorul 9

89

Proiectarea Microsistemelor DigitaleIN AND JZ IN AND JZ IN AND JZ IN AND JZ IN AND JZ AL,40H AL,04H COM10 ;s-a ac AL,40H AL,08H COM11 ;s-a ac AL,40H AL,10H COM12 ;s-a ac AL,40H AL,20H COM13 ;s-a ac AL,40H AL,40H COM14 ;s-a ac

ionat comutatorul 10

ionat comutatorul 11

ionat comutatorul 12

ionat comutatorul 13

ionat comutatorul 14

90

Proiectarea Microsistemelor DigitaleIN AL,40H AND AL,80H JZ COM15 ;s-a ac ionat comutatorul 15 JP REIA COM0: CALL TIM ;se a teapt oprirea vibra iilor CO0: IN AL,20H AND AL,01H JZ CO0 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,0C0H OUT 00H,AL ;se afi eaz cifra 0 JP REIA .................... .................... ....................

91

Proiectarea Microsistemelor DigitaleCOM14: CALL TIM ;se a teapt oprirea vibra iilor CO14: IN AL,40H AND AL,40H JZ CO14 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,86H OUT 00H,AL ;se afi eaz cifra E JP REIA COM15: CALL TIM ;se a teapt oprirea vibra iilor CO15: IN AL,40H AND AL,80H JZ CO15 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor MOV AL,0A6H OUT 00H,AL ;se afi eaz cifra F JP REIA

92

Proiectarea Microsistemelor Digitale8.4.4. S se conecteze 2 minitastaturi cu cte 12 contacte la o unitate central cu microprocesorul 8086. Solu ia: Pentru conectarea minitastaturilor este necesar un registru i un circuit cu por i cu 3 st ri.

Schema:

93

Programul:

Proiectarea Microsistemelor Digitale

;scanarea tastaturii 1 REIA: MOV AL,0DFH OUT 00H,AL ;se pune 0 logic pe prima coloan a tastaturii 1 IN AL,20H ;se cite te tastatura 1 AND AL,10H JZ TASTA11 IN AL,20H AND AL,20H JZ TASTA14 IN AL,20H AND AL,40H JZ TASTA17 IN AL,20H AND AL,80H JZ TASTA1*94

Proiectarea Microsistemelor DigitaleMOV AL,0BFH OUT 00H,AL ;se pune 0 logic pe a 2-a coloan a tastaturii 1 IN AL,20H ;se cite te tastatura 1 AND AL,10H JZ TASTA12 IN AL,20H AND AL,20H JZ TASTA15 IN AL,20H AND AL,40H JZ TASTA18 IN AL,20H AND AL,80H JZ TASTA10

95

Proiectarea Microsistemelor DigitaleMOV AL,07FH OUT 00H,AL ;se pune 0 logic pe a 3-a coloan a tastaturii 1 IN AL,20H ;se cite te tastatura 1 AND AL,10H JZ TASTA13 IN AL,20H AND AL,20H JZ TASTA16 IN AL,20H AND AL,40H JZ TASTA19 IN AL,20H AND AL,80H JZ TASTA1#

96

Proiectarea Microsistemelor Digitale;scanarea tastaturii 2 MOV AL,0FEH OUT 00H,AL ;se pune 0 logic pe prima coloan a tastaturii 2 IN AL,20H ;se cite te tastatura 2 AND AL,01H JZ TASTA21 IN AL,02H AND AL,20H JZ TASTA24 IN AL,20H AND AL,04H JZ TASTA27 IN AL,20H AND AL,08H JZ TASTA2*

97

Proiectarea Microsistemelor DigitaleMOV AL,0FDH OUT 00H,AL ;se pune 0 logic pe a 2-a coloan a tastaturii 2 IN AL,20H ;se cite te tastatura 2 AND AL,01H JZ TASTA22 IN AL,02H AND AL,20H JZ TASTA25 IN AL,20H AND AL,04H JZ TASTA28 IN AL,20H AND AL,08H JZ TASTA20

98

Proiectarea Microsistemelor DigitaleMOV AL,0FBH OUT 00H,AL ;se pune 0 logic pe a 3-a coloan a tastaturii 2 IN AL,20H ;se cite te tastatura 2 AND AL,01H JZ TASTA23 IN AL,02H AND AL,20H JZ TASTA26 IN AL,20H AND AL,04H JZ TASTA29 IN AL,20H AND AL,08H JZ TASTA2# JP REIA99

Proiectarea Microsistemelor DigitaleTASTA11: CALL TIM ;se a teapt oprirea vibra iilor TAS11: IN A,20H AND AL,10H JZ TAS11 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA TASTA14: CALL TIM ;se a teapt oprirea vibra iilor TAS14: IN A,20H AND AL,20H JZ TAS14 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA

100

Proiectarea Microsistemelor Digitale............................... TASTA1#: CALL TIM ;se a teapt oprirea vibra iilor TAS1#: IN A,20H AND AL,80H JZ TAS1# ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA TASTA21: CALL TIM ;se a teapt oprirea vibra iilor TAS21: IN A,20H AND AL,01H JZ TAS21 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA

101

Proiectarea Microsistemelor Digitale............................... TASTA29: CALL TIM ;se a teapt oprirea vibra iilor TAS29: IN A,20H AND AL,04H JZ TAS29 ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA TASTA2#: CALL TIM ;se a teapt oprirea vibra iilor TAS2#: IN A,20H AND AL,08H JZ TAS2# ;se a teapt dezactivarea tastei CALL TIM ;se a teapt oprirea vibra iilor ;ac iunea determinat de ac ionarea tastei JP REIA

102


Recommended