Sunteți pe pagina 1din 29

Proiectarea Microsistemelor Digitale

Curs 9

Proiectarea Microsistemelor Digitale


5.4. Interfaa paralel

Spre deosebire de transferul serial, la care transferul datelor se face


bit dup bit, la transferul paralel se transfer 8 bii simultan iar
transferul este nsoit i de semnale de dialog.
Exist un semnal de dialog ctre modulul care primete datele prin
care acesta este anunat c datele sunt stabile pe linii i pot fi
preluate.
De asemenea exist cel puin un semnal de dialog de la modulul
care primete datele prin care acesta comunic primirea acestora
sau eventuala indisponibilitate a sa de a primi datele.

Proiectarea Microsistemelor Digitale

Circuitul specializat programabil 8255


Dispune de 24 linii de intrare/ ieire care pot fi configurate n mai
multe feluri n funcie de modul de lucru ales:

2 grupe de cte 12 linii de intrare sau ieire, fr semnale de dialog;


2 grupe de cte 8 linii de intrare sau ieire, cu semnale de dialog sau
o grup de 8 linii bidirecionale, cu semnale de dialog.

Din cele 24 linii de intrare/ ieire 16 au posibiliti de memorare iar 8


nu au aceast facilitate.
Comunicarea cu circuitul 8255 se face prin intermediul a 4 adrese
de port, corespunztoare porturilor A, B, C i portului pentru
cuvntul de comand.

Proiectarea Microsistemelor Digitale

Configuraia terminalelor:

Proiectarea Microsistemelor Digitale

Semnificaiile terminalelor:
/CS /RD /WR

A1

A0

Operaia

Scriere n portul A

Scriere n portul B

Scriere n portul C

Scriere n portul cuvntului de comand

Citire din portul A

Citire din portul B

Citire din portul C

Fr operaie magistrala de date este n a


3-a stare

Fr operaie magistrala de date este n a


3-a stare

Magistrala de date este n a 3-a stare

Proiectarea Microsistemelor Digitale

Structura intern:

Proiectarea Microsistemelor Digitale

Tamponul date asigur legtura ntre circuit i magistrala de date a


sistemului: transfer cuvinte de comand, de stare i date.
Logica scriere/ citire are rolul s conduc ntregul transfer de date
din interiorul circuitului:

Are ca intrri semnale de comand din partea microprocesorului care i comunic


ce fel de operaii se desfoar.
Acest bloc comand cele 2 jumti ale circuitului: grupul A i grupul B.
Blocurile de control pentru grupele A i B primesc comenzi de la blocul Logic
scriere/ citire, primesc cuvintele de comand i genereaz comenzile pentru
porturile corespunztoare.

Porturile A, B i C au cte 8 bii:

Portul A poate fi ieire, n modurile 0, 1 sau 2, cu posibiliti de memorare sau


intrare, n modurile 0, 1 sau 2, cu posibiliti de memorare doar n modul 1 sau 2.
Portul B poate fi ieire, n modurile 0 sau 1, cu posibiliti de memorare sau
intrare, n modurile 0 sau 1, cu posibiliti de memorare doar n modul 1.
Portul C are funciuni multiple: poate fi ieire, doar n modul 0, cu posibiliti de
memorare sau intrare, doar n modul 0, fr posibiliti de memorare; dac
porturile A i B lucreaz n modurile 1 sau 2, atunci ranguri din portul C vor fi
folosite pentru semnale de dialog i ntregul port C poate fi folosit pentru a obine
informaie de stare de la circuit.
7

Proiectarea Microsistemelor Digitale

Programarea circuitului:

Se realizeaz prin transmiterea unui cuvnt de comand la adresa


portului cuvntului de comand; se poate cere porturilor s lucreze n
unul din urmtoarele moduri:

modul 0, numit i mod intrare/ ieire, pentru porturile A, B i C,


modul 1, numit i mod intrare/ ieire cu dialog, pentru porturile A i B i
modul 2, numit i mod bidirecional cu dialog, doar pentru portul A.

Exist i posibilitatea ca, printr o singur instruciune de ieire,


microprocesorul s comande ieiri individuale ale portului C; se face
printr un cuvnt de comand n care rangul 7 este la valoarea 0 logic;
particularitatea este cunoscut sub numele mod bit set/ reset i este
util n aplicaii de control.
O alt facilitate: generarea unui semnal care poate fi folosit ca cerere de
ntrerupere; va fi generat n anumite condiii, care vor fi prezentate, i, n
plus, trebuie validat sistemul de ntreruperi al circuitului; const n cte
un bistabil, pentru modurile de lucru 1 i 2, iar activarea sau inactivarea
bistabilului se face prin ranguri din portul C.

Proiectarea Microsistemelor Digitale

Structura cuvntului de comand:

Proiectarea Microsistemelor Digitale

Structura cuvntului de comand pentru modul bit set/ reset:

10

Proiectarea Microsistemelor Digitale

Modul 0:
Se mai numete i mod intrare/ ieire i se folosete pentru operaii
simple de intrare/ ieire fr dialog. Caracteristicile modului sunt
urmtoarele:

se pot comanda 2 porturi pe 8 bii i 2 porturi pe 4 bii,


oricare port poate fi intrare sau ieire,
un port ieire are posibiliti de memorare iar un port intrare nu
memoreaz datele,
exist 16 configuraii posibile,
pentru a transmite date la portul selectat se folosete o instruciune de
ieire,
pentru a prelua date de la portul selectat se folosete o instruciune de
intrare.

11

Proiectarea Microsistemelor Digitale

4 configuraii posibile cu porturile A, B i C n modul 0 i cuvintele de


comand corespunztoare:

12

Proiectarea Microsistemelor Digitale

Modul 1:
Se mai numete i mod de intrare/ ieire cu dialog i se folosete
pentru operaii de intrare/ ieire cu dialog. Caracteristicile modului
sunt urmtoarele:

se pot comanda independent grupul A i grupul B,


grupul A conine portul A i 3 ranguri ale portului C iar grupul B conine
portul B i alte 3 ranguri ale portului C ,
rangurile nefolosite ale portului C pot fi comandate prin modul bit set/
reset,
porturile A i B pot fi declarate ca intrri sau ieiri avnd i posibiliti de
memorare,
portul C are i rol de registru de stare.

13

Proiectarea Microsistemelor Digitale

Semnalele de dialog folosite n modul 1 intrare sunt:

/STB (Strobe): intrare prin care perifericul anun c a plasat date pe


liniile portului; 0 logic va provoca ncrcarea datelor n port;
IBF (Input Buffer Full): ieire, activ la 1 logic, prin care portul anun
perifericul c datele au fost preluate; semnalul redevine inactiv dup ce
semnalul /RD de la microprocesor devine inactiv, ceea ce corespunde
situaiei n care microprocesorul a preluat data ncrcat cu /STB;
INTR (Interrupt): este o ieire, activ la 1 logic, ctre microprocesor,
prin care 8255 i comunic acestuia c un port de intrare are o dat de
transmis; semnalul poate fi cerere de ntrerupere pentru microprocesor;
semnalul va fi activ cnd /STB = 1, adic data a fost ncrcat, IBF = 1,
adic i s a comunicat perifericului c data a fost preluat i dac
sistemul de ntreruperi al circuitului este activ; semnalul va fi dezactivat
de frontul anterior al semnalului /RD care corespunde situaiei n care
microprocesorul a luat n considerare cererea; sistemul de ntreruperi
este implementat cu bistabilul INTEA pentru portul A i INTEB pentru
portul B i este comandat n modul bit set/ reset prin rangurile PC4
pentru portul A, respectiv PC2 pentru portul B ale portului C.
14

Proiectarea Microsistemelor Digitale

Dialogul pentru modul 1 intrare:

15

Proiectarea Microsistemelor Digitale

Terminalele folosite pentru dialog i cuvintele de comand pentru


modul 1 intrare:

16

Proiectarea Microsistemelor Digitale

Semnalele de dialog folosite n modul 1 ieire sunt:

/OBF (Output Buffer Full): ieire, activ la 0 logic, prin care portul
anun perifericul c microprocesorul i a trimis o dat i a plasat o pe
liniile proprii; semnalul este activat dup dezactivarea lui /WR, prin care
microprocesorul nscrie data n port, i va fi dezactivat de rspunsul
perifericului;
/ACK (Acknowledge): intrare, activ la 0 logic, prin care perifericul
anun c a preluat data trimis de portul A sau B; este rspunsul la
semnalul /OBF;
INTR (Interrupt): ieire, activ la 1 logic, ctre microprocesor, prin care
8255 i comunic acestuia c a transmis ctre periferic data primit de la
el i ateapt o nou dat; semnalul poate fi cerere de ntrerupere
pentru microprocesor; semnalul va fi activ cnd /OBF = 1, adic data a
fost transmis ctre periferic, /ACK = 1, adic perifericul a preluat data i
dac sistemul de ntreruperi al circuitului este activ; sistemul de
ntreruperi este implementat cu bistabilul INTEA pentru portul A i INTEB
pentru portul B i este comandat n modul bit set/ reset prin rangurile
PC6 pentru portul A, respectiv PC2 pentru portul B ale portului C.
17

Proiectarea Microsistemelor Digitale

Dialogul pentru modul 1 ieire:

18

Proiectarea Microsistemelor Digitale

Terminalele folosite pentru dialog i cuvintele de comand pentru


modul 1 ieire:

19

Proiectarea Microsistemelor Digitale

Configuraii cu porturile A i B n modul 1:

20

Proiectarea Microsistemelor Digitale

Informaia de stare (registrul C):

Modul 1 intrare:

I/E

I/E

IBFA

INTEA INTRA INTEB IBFB

INTRB

Modul 1 ieire:

/OBFA INTEA I/E

I/E

INTRA INTEB /OBFB INTRB

21

Proiectarea Microsistemelor Digitale

Modul 2:
Se mai numete i mod bidirecional cu dialog; semnalele de dialog
au aceleai semnificaii ca n modul 1, poziiile lor relative sunt
aceleai, existnd, totui, o diferen: semnalul /ACK, la 0 logic
valideaz transmiterea datelor de ctre portul A ctre periferic iar
dac este 1 logic liniile de date vor fi n a 3 a stare; /ACK nu mai
are semnificaie de achitare, ci semnificaie de cerere. Caracteristici:

doar grupul A poate lucra n acest mod,


grupul A este alctuit din portul A i 5 semnale de dialog care folosesc
ranguri ale portului C,
grupul B poate fi programat n modul 1 sau 0,
exist facilitatea de memorare i la intrare i la ieire,
portul C are i rol de registru de stare,
Sistemul de ntreruperi este implementat de bistabilele INTE1 i INTE2.
INTE1 este asociat ieirii i este comandat prin terminalul PC6 iar INTE2
este asociat intrrii i este comandat de terminalul PC4.
22

Proiectarea Microsistemelor Digitale

Terminalele portului C folosite de grupul A pentru dialog:

23

Proiectarea Microsistemelor Digitale

Configuraie cu portul A n modul 2 i portul B n modul 1:

24

Proiectarea Microsistemelor Digitale

Cuvntul de stare n modul 2:

/OBFA INTE1

IBFA

INTE2

INTRA I/E

I/E

I/E

25

Proiectarea Microsistemelor Digitale

Aplicaii:
S se proiecteze o interfa paralel care s lucreze n conformitate
cu dialogul de tip CENTRONIX.

Dialogul de tip CENTRONIX:

26

Proiectarea Microsistemelor Digitale

Schema interfeei:

27

Proiectarea Microsistemelor Digitale

Adresele de port:

Modurile de lucru:

40H pentru portul A,


42H pentru portul B,
44H pentru portul C i
46H pentru RCC.

0 ieire pentru portul A,


0 ieire pentru portul B i
0 intrare pentru portul C inferior.

Rutina de programare:
MOV
OUT

AL,81H
46H,AL

28

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 ateapt pn cnd
receptorul este liber i apoi trimite data, activnd i dezactivnd
semnalul /STB.
29

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

  • PMD
    PMD
    Document34 pagini
    PMD
    Pasan Petru
    Încă nu există evaluări
  • Curs 14
    Curs 14
    Document30 pagini
    Curs 14
    Pasan Petru
    Încă nu există evaluări
  • Curs 11
    Curs 11
    Document34 pagini
    Curs 11
    Pasan Petru
    Încă nu există evaluări
  • Curs 10
    Curs 10
    Document23 pagini
    Curs 10
    Pasan Petru
    Încă nu există evaluări
  • Curs 12
    Curs 12
    Document35 pagini
    Curs 12
    Pasan Petru
    Încă nu există evaluări
  • Curs 13
    Curs 13
    Document25 pagini
    Curs 13
    Pasan Petru
    Încă nu există evaluări
  • Curs 7
    Curs 7
    Document34 pagini
    Curs 7
    Pasan Petru
    Încă nu există evaluări
  • Curs 8
    Curs 8
    Document21 pagini
    Curs 8
    Pasan Petru
    Încă nu există evaluări
  • Curs 6
    Curs 6
    Document26 pagini
    Curs 6
    Pasan Petru
    Încă nu există evaluări
  • Curs 5
    Curs 5
    Document26 pagini
    Curs 5
    Pasan Petru
    Încă nu există evaluări
  • Curs 3
    Curs 3
    Document24 pagini
    Curs 3
    Pasan Petru
    Încă nu există evaluări
  • Curs 4
    Curs 4
    Document37 pagini
    Curs 4
    Pasan Petru
    Încă nu există evaluări
  • Curs Flash 1
    Curs Flash 1
    Document35 pagini
    Curs Flash 1
    Alex Alex
    Încă nu există evaluări
  • Curs 2
    Curs 2
    Document39 pagini
    Curs 2
    Pasan Petru
    Încă nu există evaluări
  • LabAC 1
    LabAC 1
    Document5 pagini
    LabAC 1
    cornel_punga1504
    Încă nu există evaluări