curs 7 - inter fat area cu dispozitive periferice
TRANSCRIPT
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
1/30
Curs 7
Interfaarea cu dispozitive periferice
Sistemele cu P pentru conducerea proceselor interfee pentru cuplarea perifericelor:
- dialogul cu operatorul:o butoane, comutatoare, lmpi de semnalizare,
tastaturi, afiaje etc.
- nregistrarea i stocarea datelor din proces:o imprimante, plotere, memorii de mas etc.
- conducerea proceselor fizice:o intrri de la traductoare:
convertoare A/N traductoareanalogice; intrri numerice limitatoare de curs,
senzori numerici; intrri n impulsuri traductoare cu
ieire n impulsuri.
o ieiri ctre elemente de execuie: convertoare N/A; ieiri numerice; ieiri n impulsuri.
- comunicaia cu alte sisteme cu microprocesoare:o paralel;o serial. Fig.7.1. Interfaarea sistemelor cu P
UCP cu P
Interfa
paralel
Interfa
serial
Dispozitive periferice
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
2/30
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
3/30
7.1.1. Transferul paralel. Controlul fluxului de date ntre interfai periferic
Tipuri de transfer paralel: cu sau fr controlul fluxului de date.
I/E nesincronizat (fr controlul fluxului de date)
Sursa: poate furniza date pe magistrala de I/E n orice moment; menine datele valide pe magistrala de I/E pn cnd
depune noi date.
Destinaia: utilizeaz datele prezente pe magistrala de I/E, fr a le
memora; are acces la date ct timp acestea sunt disponibile pe
magistrala de I/E.
Intrare nesincronizat: perifericul depune date noi pe liniile I; P citete direct starea liniilor de intrare I.
Fig.7.3. I/E paralel nesincronizatIeire nesincronizat:
P comand direct nivelul semnalului de pe liniile de ieire E; perifericul utilizeaz continuu datele prezente pe liniile de ieire E.
Date de la perifericI
Date pentru perifericE
UCP cu P
Interfa paralel
Dispozitive periferice
IE
MA MD MC
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
4/30
I/E sincronizat (cu controlul fluxului de date):- fr confirmare;- cu confirmare: simpl sau dubl.
I/E sincronizat fr confirmare:
Sursa: poate furniza date pe magistrala de I/E n orice moment; indic depunerea datelor printr-un impuls pe linia STB; opional - menine datele valide pe magistrala de I/E.
Destinaia: memoreaz datele prezente pe magistrala de I/E la
detectarea impulsului pe linia controlat de surs (SRC); are acces la datele memorate pn la sosirea altora noi.
Intrare sincronizat fr confirmare: perifericul comand nscrierea datelor n portul de intrare. P ateapt apariia de date noi n portul de intrare.
Fig.7.4. I/E fr confirmareIeire sincronizat fr confirmare:
P nscrie date n portul de ieire al interfeei paralele; perifericul ateapt ca interfaa s nscrie date noi.
Date de la / spre perifericI/E
SRCI/E
UCP cu P
Interfa paralel
Dispozitive periferice
I
E
MA MD MC
SRCISRCE
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
5/30
I/E sincronizat cu confirmare simpl (single-handshake):
Sursa: poate nscrie datele la destinaie numai cnd aceastaeste pregtit s le preia (DST=1); opional - menine datele valide pe magistrala de I/E.
Destinaia: indic sursei prin DST dac poate primi date noi; reine datele prezente pe magistrala de I/E la
detectarea impulsului pe linia SRC;
Intrare sincronizat cu confirmare simpl:
perifericul ateapt permisiunea interfeeide a nscrie date noi; P ateapt apariia de date noi n portul de intrare.
Fig.7.5. I/E cu confirmare simplIeire sincronizat cu confirmare simpl:
P ateapt permisiunea interfeei de a nscrie date noi; perifericul indic interfeei momentul n care poate primi date noi.
Utilizat n transferuri paralele unidirecionale.
Date de la / spre perifericI/E
SRCI/E
DSTI/E
UCP cu P
Interfa paralel
Dispozitive periferice
I
E
MA MD MC
SRCI
SRCEDSTI
DSTE
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
6/30
I/E sincronizat cu confirmare dubl (double-handshake):
Sursa: poate depune datele pe magistral numai cnd destinaia confirm c magistrala esteliber (DST=0); nscrie datele la destinaie (SRC=1). menine datele valide ct timp DST=0.
Destinaia: indic sursei prin DST dac poate depune sau nu date pe magistral; reine datele prezente pe magistrala de I/E la dezactivarea semnalului pe linia SRC.
Fig.7.6. I/E cu confirmare dubl
Intrare sincronizat cu confirmare dubl:
perifericul ateapt permisiunea interfeei pentru a depune i nscrie date noi; P ateapt apariia de date noi n portul de intrare.
Ieire sincronizat cu confirmare simpl: P ateapt permisiunea interfeei de a nscrie date noi; perifericul indic interfeei momentul n care aceasta poate depune i nscrie date noi.
Utilizat n transferuri paralele bidirecionale.
Date de la / spre perifericI/E
SRCI/E
DSTI/E
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
7/30
7.1.2. Interfaa paralel PPI 8255/8255A. Caracteristici tehnice i structura intern
PPI - Programmable Peripheral Interface interfa paralel programabil
40 de pini, compatibil TTL, alimentat la +5V; 8255/8255A - NMOS, 82C55A CMOS; 3 porturi I/E paralele de 8 bii.
Fig.7.7. Structura intern a interfeei paralele 8525/8255A
RDWR
A1
Grup A
Port A
Comand
Grup AGrup A
Port C
(sup)Tamponmagistral
de date Grup B
Port C
(inf)
Comand
Grup BLogicde
comand
citire/
scriere
Grup B
Port B
CS
D7D0
A0PB7PB0
PC3PC0
PC7
PC4
PA7PA0
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
8/30
3 porturi de 8 bii: A, B i C: Grup A = Port A + Port Csup, Grup B = Port B + Port Cinf
Tamponul magistralei de date asigur legtura ntre MD i magistrala intern, este
validat la selectarea circuitului ( CS =0).Logica de citire/scriere stabilete sensul de transfer al datelor prin tamponul magistraleide date (RD , WR) i decodific liniile A1i A0 pentru a selecta registrele interne.
Logica de comand conine un registru de control (CWR - Control Word Register), princare se poate programa modul de lucru al celor dou grupuri de porturi.
Linia RESET terge coninutul registrelor interne (A, B, C porturi de intrare n modul 0).
CS RD WR A1 A0 Tipul operaiei efectuate
0 0 1 0 0 Citire port A
0 0 1 0 1 Citire port B
0 0 1 1 0 Citire port C
0 0 1 1 1 Nici o operaie (D7D0 n HZ)
0 1 0 0 0 Scriere n portul A
0 1 0 0 1 Scriere n portul B0 1 0 1 0 Scriere n portul C
0 1 0 1 1 Scriere n registrul de comand
1
0 1 1 Nici o operaie (D7D0 n HZ)
Fig.7.8. Tabelul de funcionare al circuitului 8255/8255A
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
9/30
Porturile A, B i C porturi independente de 8 bii.
Portul A - un registru de ieire cu memorare;
- un registru cu memorare pe intrare.Portul B - un registru tampon intrare/ieire cu memorare
- un tampon de intrare;
Portul C - un registru tampon de intrare fr memorare;- un registru tampon de ieire cu memorare.
Porturile A i B linii utilizate numai pentru transferul de date pe octet
Portul C - poate fi controlat pe octet, semioctet i pe bit.- liniile portului C au i funcii auxiliare de sincronizare a transferului prin A i B.
7.1.3. Modurile de lucru ale interfeei paralele PPI 8255/8255A
Circuitul 8255A poate lucra n trei moduri, selectabile prin program.
Modul 0 - intrare/ieire nesincronizatA, B, Csupi Cinfpot fi programate separat pentru transfer paralel nesincronizat.
Modul 1 intrare sau ieire sincronizatA i B programate independent pentru transfer paralel sincronizat cu confirmare simpl.
Modul 2 intrare/ieire sincronizatPortul A programat pentru transfer bidirecional sincronizat, cu confirmare dubl.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
10/30
Mod
Port AMod
Port B
0 I/E I/E I/E I/E I/E I/E I/E I/E I/E I/E 0
1 I I/E I/E IBFA ASTB INTRA BSTB IBFB INTRB I 1
1 E AOBF AACK I/E I/E INTRA BACK BOBF INTRB E 1
2 I-E AOBF AACK IBFA ASTB INTRA
Fig.7.9. Conectarea PPI 8255A n sistem i semnificaia pinilor n cele trei moduri de lucru
RD WR D7D0 CS A1 A0
RESET 8255A
Port A Port C Port B
PA7PA0 PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PB7PB0
Magistrala de adrese
Magistrala de comand
Magistrala de date
A1 A0
I/OWI/OR
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
11/30
Modul 1 intrare: SRC = STB (strobe); DST = IBF (Input Buffer Full);
Fig.7.10. Evoluia semnalelor de control n modul 1; A, B - porturi de intrare
1. Perifericul depune data pe liniile de intrare.2. Perifericul activeaz semnalul STB i nscrie data n portul de intrare.3. Portul de intrare reine data i indic acest lucru prin activarea liniei IBF.4. Informat despre ncrcarea datei, perifericul dezactiveaz linia STB.5. Perifericul poate nceta s mai menin data valid pe magistral.6. Atunci cnd STB IBFRD=1, 8255 activeaz linia de ntrerupere INTR, dac INTE=1.7. P afl c data este disponibili declaneaz o procedur de citire a ei (RD=0).8. Achitarea cererii de ntrerupere (INTR=0).9. Data este citit de microprocesor.10.Linia IBF este dezactivat: perifericul poate depune o nou dat pe magistral.
Data stabil
10
STB
IBF
INTR
RD
Date de la
periferic
1 2 3 4 5 6 7
89
tPHtPS
tST
Numai dac
INTE=1
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
12/30
Modul 1 ieire SRC = OBF (Output Buffer Full); DST = ACK (Acknowledge);
Fig.7.11. Evoluia semnalelor de control n modul 1; A, B - porturi de ieire
11.P nscrie data n portul de ieire.12.Se dezactiveaz cererea de ntrerupere pe linia INTR (dac exist).13.Se termin scrierea, odat cu dezactivarea semnalului WR .14.Datele apar pe magistral dup tWB de la terminarea scrierii.15.Se activeaz linia OBF , care anun perifericul c datele sunt valide pe magistral.16.Perifericul confirm preluarea datei prin activarea semnalului ACK .17.Aceasta determin portul s-i dezactiveze linia OBF .18.Se dezactiveaz linia de confirmare a prelurii datei de ctre periferic.
19.Atunci cnd WROBF
ACK=1, se genereaz o ntrerupere pe linia INTR, dac INTE=1.20.P este anunat astfel c portul de ieire este pregtit s accepte noi date.
WR
OBF
INTR
tWB
Date pentru
periferic
Numai dac INTE=1
Data stabil
ACK
1511 12 13 14 16 17 18 19 20
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
13/30
Modul 2 - intrare-ieire sincronizat SRC = STBA, OBF A; DST = IBFA, ACK A.
INTRA = STBAIBFARD + WROBFAACK A, condiionat de INTE1i INTE2.
Controlul fluxului de date cade n sarcina perifericului.
Fig.7.12. Evoluia semnalelor de control n modul 2; A - port intrare-ieire
9
tST
tKDtAD
tPHtPS
Date pt. periferic
1 2 3 4 5 6 7 10
STBA
IBFA
RD
PA7PA0
WR
OBFA
INTRA
ACKA
11 13 1918
8
Date de la periferic
14
17
14
1615 2012
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
14/30
7.1.4. Programarea interfeei paralele PPI 8255/8255A
D7 D6 D5 D4 D3 D2 D1 D0
1 MA1 MA0 PA PCS MB PB PCIGrup A Grup B
Mod Tip Mod Tip
Port A Port A PC7PC4 Port B Port B PC3PC0ControlWord
0 0 - modul 00 1 - modul 11 x - modul 2
1 - I0 - E 1 - I0 - E 0 - mod 01 - mod 1 1 - I0 - E 1 - I0 - E
D7 D6 D5 D4 D3 D2 D1 D0
0 x x x B2 B1 B0 S / R
Nu conteaz Selecie bit port C OperaiaPC0 0 0 0PC1 0 0 1PC2 0 1 0PC3 0 1 1PC4 1 0 0
PC5 1 0 1PC6 1 1 0
Single Bit Set/Reset
PC7 1 1 1
1 - Set0 - Reset
Fig.7.13. Cuvinte de comand
Comenzi pe bit (portul C n modul 0)
Activarea/dezactivarea ntreruperilor (modurile 1 i 2).
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
15/30
Citirea portului C informaie de stare SW (Status Word) - interogare
Mod Port A D7 D6 D5 D4 D3 D2 D1 D0 Mod Port B
0 I/E PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 0 I/E
1- I PC7 PC6 IBFA INTEA INTRA INTEB IBFB INTRB 1 - I
1 - E OBFA INTEA PC5 PC4 INTRA INTEB OBFB INTRB 1 - E
2 I-E OBFA INTE1 IBFA INTE2 INTRA
Fig.7.14. Cuvntul de stare (citit din portul C)
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
16/30
7.2. Interfaarea serial
Transferul informaiei ntre P i interfa:
- la fel ca la interfaa paralel.
Transferul informaiei ntre interfai periferic:
pe linii seriale (bit cu bit);
cu vitez mai redus, dat de caracteristicile
interfeei i ale dispozitivului periferic; la o distan invers proporional cu viteza (de
ordinul zeci - sute de m)
cu imunitate mai ridicat la perturbaii.
Transferul serial sincronizat:
- la nivel de caracter transfer asincron;
- la nivel de bit transfer sincron.
Fluxul de date:
Simplex unidirecional;
Half-duplex bidirecional, multiplexat n timp; Duplex bidirecional, simultan.
Tipuri de legturi seriale:
- punct la punct; Fig.7.17. Interfaarea serial a sistemelor cu P
- multipunct.
UCP cu P
Interfa serial
Adaptor de comunicaie
Dispozitiv periferic
sau
sistem cu microprocesor
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
17/30
Fig. 7.18. Modelul general al comunicaiei seriale punct la punct
ETPD - echipamente terminale de prelucrare a datelor (DTE - Data Terminal Equipment);
ETCD - echipamente terminale pentru comunicaii de date (DCE - Data CommunicationEquipment).Linia de comunicaie - mediul fizic prin care se propag datele seriale.
- linii dedicate - linie telefonic nchiriat, linie telex, fibr optic, transmisie radio;- linii comutate linii telefonice din reeaua public.
Adaptor de comunicaie adaptarea la caracteristicile liniei de date.Linii cu cuplaj direct (adaptor fr modem): EIA RS-232, RS-422A, RS-423A, RS-485.
linie
de date
circuit de date
Unitate
centralcu micro-
procesor
Adaptorde comu-
nicaie
Interfaserial
Unitate
centralcu micro-
procesor
Adaptorde comu-
nicaie
Interfaserial
legtur de date
sim lex
duplex
semidu lex
ETPDETPD ETCD ETCD
IL
IP IPIS IS
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
18/30
7.2.1. Interfaa serial USART 8251A. Caracteristici tehnice i structura intern
USART (Universal Synchronous / Asynchronous Receiver / Transmitter)- un canal serial full duplex;- viteza maxim 19200 Baud (asincron), 64000 Baud (sincron).
Fig.7.19. Schema bloc a circuitului 8251A
RD
WR
C/D
Tampon
transmisie
Comand
transmisie
Tampon
magistral
de date
Logic
de
comand
i
citire/
scriere
Comand
modem
CS
D7D0 TxD
TxRDY
TxE
TxC
CLK
RESET
RTS
CTS
DTR
DSR
Tampon
recepie
Comand
recepie
RxD
RxRDY
RxC
SYNDET/BRKDET
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
19/30
Tamponul magistralei de date asigur legtura ntre MD i magistrala intern, estevalidat la selectarea circuitului ( CS =0).
Logica de comandi citire/scriere:- stabilete sensul de transfer al datelor prin tamponul magistralei de date ( RD , WR) i
decodific linia C/D (Control / Data) pentru a selecta registrele interne.- sincronizeaz funcionarea transmitorului i receptorului, cu ajutorul semnalului CLK,
avnd frecvena cuprins ntre 750 Khz i 3 MHz (de cel puin 30 de ori > viteza serial).
Linia C/D - se conecteaz la linia A0 a magistralei de adrese.
CS RD WR C/D Tipul operaiei efectuate
0 0 1 0 Citire octet din tamponul de recepie
0 1 0 0 Scriere octet n tamponul de transmisie
0 0 1 1 Citire cuvnt de stare
0 1 0 1 nscriere cuvnt de mod/comand
0 1 1
1 Nici o operaie (D7D0 n HZ)
Fig.7.20. Dialogul dintre P i 8251A
RESET aduce circuitul n starea de inactivitate (Idle), pregtindu-l pentru programare.
Canalul serial are dou blocuri complet independente:
Transmitorul primete date de la P i le transmite pe TxD, sincron cu TxC.Receptorul primete date pe RxD, sincron cu RxC, care sunt preluate de P.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
20/30
Transmitorul format din:- un registru paralel paralel: ncrcat de P cu date de transmis.- un registru paralel serie: preia data din registrul paralel-paralel i o transmite pe TxD.- o logic de comand a transmisiei seriale pe linia TxD, sincronizat de TxC.
Fig.7.21. Structura intern a transmitorului
TxC sincronizeaz transmisia serial la nivel de bit: un nou bit apare pe TxD pe:- fiecare front cztor al TxC:
o viteza de transmisie este egal cu frecvena TxC;- fiecare al 16-lea (al 64-lea) front cztor pe TxC:
o viteza de transmisie este de 16 sau 64 ori mai mic dect frecvena TxC.
TxRDY (Transmitter Ready) P poate nsrie un nou octet n registrul paralel-paralel.
TxE (Transmitter Empty) registrul paralel-serie este gol.
TxRDY, TxE ntreruperi la transmisie.
Registru
paralel-
paralel
Comand transmisie
Registru
paralel-
serie
TxRDY
TxE
TxC
De la
logica de
comandi
citire/scriere
De la
magistrala
intern
TxD
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
21/30
Receptorul format din:- un registru serie paralel: preia biii de pe linia RxD, pe care i asambleaz n caractere.- un registru paralel paralel: preia caracterele din registrul serie-paralel, la dispoziia P- o logic de comand a recepiei seriale pe linia RxD, sincronizat de RxC.
RxC sincronizeaz recepia serial la nivel de bit: starea liniei RxD este citit pe:- fiecare front cresctor al RxC:
o viteza de recepie este egal cu frecvena RTxC;- fiecare al 16-lea (al 64-lea) front cresctor pe RxC:
o viteza de transmisie este de 16 sau 64 ori mai mic dect frecvena RxC.
Fig.7.22. Structura intern a receptorului
RxRDY un caracter recepionat este disponibil pentru a fi citit de P (ntrerupererecepie)
SYNDET/BRKDET (SYNc DETect/BReaK DETect) rol specific modului de lucru.
Registru
paralel-
paralel
Comand recepie
Registru
paralel-
serie
RxRDY
TxC
De la
logica de
comandi
citire/scriere
La
magistrala
intern
RxD
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
22/30
Logica de comand modem controlul hardware al fluxului de date:
DSR (Data Set Ready) intrare - modem pregtit pentru transfer;
DTR (Data Terminal Ready) ieire - terminal de date pregtit pentru transfer;RTS (Request to Send) ieire cere permisiunea de a transmite;
CTS (Clear to Send) intrare primete confirmarea la cererea de transmisie.
7.2.2. Funcionarea USART 8251A n modul asincron
Fig.7.23. Modul de lucru asincron
Bit de
paritate
Inserai automat de ctre 8251A
Transmisie
De la microprocesor
Bii de
STOPBii de dateBii de date (n=58) Bit de
STARTTxD
Bit de
START
D0 D1 D2 . . . Dn-1
Caracter
D0 D1 D2 . . . Dn-1
Bit deparitate
Verificai
de 8251A
Testat de
8251A
Recepie
Preluai de ctre microprocesor
Bii deSTOP
Bii de dateBii de date (n=58) Bit deSTART
RxD Bit deSTART
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
23/30
Modul de lucru asincron: sincronizarea receptorului cu transmitorul:
o la nivel de caracter: grup de 58 bii succesivi.
Linia TxD:- nu este nici un caracter de transmis nivel HIGH;- are un caracter de transmis:
o transmite un bit de START nivel LOWo transmite biii caracterului, ncepnd cu lsb;o (opional) transmite bitul de paritate;o transmite 1, 11/2 sau 2 bii de STOP - nivel HIGH.
Validarea transmisiei:- software TxEN=1 n registrul de comand;
- hardware - CTS =0 confirmare la cererea de transmisie furnizat prin RTS=0.
TxD abandonarea transmisiei n curs de desfurare: SBRK=1 n registrul de comand (Send BReaK character)
foreaz TxD continuu pe nivel LOW.
Linia RxD:- nu este nici un caracter prezent pe linie nivel HIGH;
- apariia unui caracter:o sincronizeaz receptorul pe frontul cztor detectat pe linia RxD;o verific bitul de start la jumtatea perioadei corespunztoare vitezei de recepie;o citete periodic starea liniei RxD pentru a reine biii de date;o (opional) citete bitul de paritate;o verific prezena bitului (biilor) de STOP pe nivel HIGH.
Validarea recepiei: software RxEN=1 n registrul de comand.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
24/30
Tipuri de erori detectate i semnalizate n cuvntul de stare (SW Status Word):
- eroare de paritate bitul de paritate primit nu coincide cu bitul de paritate recalculat;
o se seteaz bistabilul PE (Parity Error) din registrul de stare.
- eroare de ncadrare bitul (biii) de STOP nu au fost gsii pe nivel HIGH;
o seteaz bistabilul FE (Framing Error) din registrul de stare.
- eroare de suprapunere P nu a citit la timp caracterul primit anterior, care s-a pierdut,fiind supranscris de urmtorul caracter sosit pe linie.
o seteaz bistabilul OE (Overrun Error) din registrul de stare.
Erorile detectate nu opresc funcionarea interfeei seriale.
Bistabilele de eroare pot fi resetate prin program: ER=1 (Error Reset) n registrul decomand.
La detectarea unui caracter BREAK (nivel LOW continuu pe linie, pe o durat mai maredect a unui caracter):
linia BRKDET (ieire) trece pe nivel HIGH;
este setat bistabilul cu acelai nume din registrul de stare.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
25/30
7.2.4. Programarea USART 8251A
Resetare iniializare comenzi
D7 D6 D5 D4 D3 D2 D1 D0
S2 S1 EP PEN L2 L1 B2 B1
Numr bii de STOP Tip paritate Numr bii de date Factor de vitez(mod asincron)
Validaregenerare/control
paritate0 0 - inactiv0 1 - 1 bit
1 0 - 11
/2 bii1 1 - 2 bii
0 - impar
1 - par 0 - fr paritate1 - cu paritate
0 0 - 5 bii0 1 - 6 bii
1 0 - 7 bii1 1 - 8 bii
0 1 - 1/1
1 0 1/161 1 1/64
Fig.7.25. Iniializare n modul asincron
D7 D6 D5 D4 D3 D2 D1 D0
SCS ESD EP PEN L2 L1 0 0Tip paritate Numr bii de dateNumr
caractereSYNC
Tipsincro-nizare
Validaregenerare/control
paritate
Mod sincron(Factor de vitez
1/1)
0 - dou1 - unul
0-intern1-extern
0 - impar1 - par 0 - fr paritate
1 - cu paritate
0 0 - 5 bii0 1 - 6 bii1 0 - 7 bii1 1 - 8 bii
Fig.7.26. Iniializare n modul sincron
Factorul de vitez divizor de frecven pentru semnalele de tact TxC i RxC.
1 obligatoriu TxC al transmitorului datelor trebuie s fie comun cu RxC al receptorului.
16, 64 TxC al transmiatorului datelor poate fi independent faa de RxC al receptorului.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
26/30
Funcionarea circuitului poate fi controlat n orice moment, de ctre microprocesor, princuvinte de comand (CW) nscrise n registrul de mod/comand.
D7 D6 D5 D4 D3 D2 D1 D0
EH IR RTS ER SBRK RxEN DTR TxEN
Intrare nmod
HUNT
Resetareintern
(=RESET)
Foreaz
RTS =0(pin)
Resetarebistabilede eroare
ForeazTxD=0(pin)
Validarerecepie
Foreaz
DTR=0(pin)
Validaretransmisie
Fig.7.27. Cuvntul de comand
D7 D6 D5 D4 D3 D2 D1 D0
DSR SYNDET/BRKDET
FE OE PE TxEMPTY RxRDY TxRDY
Eroare dencadrare
Eroare desuprapunere
Eroare deparitate
Indic dac
DSR=0(pin) Reflect ntocmai starea pinilor cu acelai nume
Fig.7.28. Cuvntul de stare
Iniializarea USART 8251A: scrierea unei succesiuni de octei, cu C/D=1:
- secvena de sincronizare (numai dup o resetare hardware):onscrierea a 3 octei de comand cu valoarea 00h;
- nscrierea unui cuvnt de comand de resetare intern (IR=1);
- nscrierea unui cuvnt de mod;
- nscrierea a 1 sau 2 caractere de sincronizare n modul sincron;
- nscrierea unui cuvnt de comand.
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
27/30
ntre dou scrieri succesive n registrul de control (C/D=1) trebuie asigurat un interval detimp de cel puin 16 perioade ale semnalului de tact CLK (tRV Recovery Time).
Dup iniializare - 8251A este apt s transfere date.La nscrierea datelor n tamponul de transmisie - nu este necesar s se in cont de tRV.
7.2.5. Utilizarea interfeei seriale USART 8251A n aplicaii
Canal de comunicaie serial asincron RS232
RS-232C - standard comunicaie serialasincron
Caracteristici electrice:
Nivelul logic 0 (L - Low) - 312V
Nivelul logic 1 (H - High) 12 -3V
Zona logic interzis: -3 3V
Fig.7.29. RS-232 caracteristici electrice
U[V]
+12V
+3V
t0
-3V
-12V
nivel
L
nivel
H
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
28/30
Caracteristicile mecanice:
tipul conectorilor: DB25 sau DB9
25 de semnale i linii de dialog pentru controlul transferului de date ntre interfaaseriali modem.
Conectori de tip T (tat) pentruDTE
Conectori de tip M (mam)
pentru DCE
Circuitele de interfa serial -semnale compatibile TTL
Nu sunt direct compatibile cucaracteristicile electrice definitede standardul RS-232.
Pentru adaptare:
circuite emitor-receptorde linie(MAX232)
Tensiunea negativ este formatcu ajutorul unor condensatoarecare se monteaz n exterior.
Fig.7.30. RS-232 caracteristici mecanice
Transmisie date
Recepie date
Cerere de transmisie
Terminal de date pregtit
Pregtit pentru transmisie
Modem pregtit
Mas semnal
Mas protecie
Indicator de apelDetecie purttoare
Ceas de recepie
Ceas de transmisie
NumeNr. pin: /25 (/9)
2 (3)
4 (7)
15 (-)
5 (8)
17 (-)
8 (1)
3 (2)
20 (4)
7 (5)
6 (6)
1 (-)
22 (9)
TxD
RTS
TxC
CTS
RxC
CD
RxD
DTR
SG
DSR
PG
RI
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
29/30
T1IN T1OUT
R1OUT R1IN
T2IN T2OUT
R2OUT R2IN
C1+
V+
C1-
C2+
V-
C2-
C1
2.2F
+
C2
2.2F
+
C3
2.2F+
VCC
C4
2.2F
+
11
12
1
3
2
6
14
10
9
13
7
8
TTL RS232
TxD
RxD
RTS
CTS
TxD
RxD
RTS
CTS
4
5
MAX232
Fig.7.31. Adaptorul de comunicaie serial asincron MAX232
-
8/3/2019 Curs 7 - Inter Fat Area Cu Dispozitive Periferice
30/30
Fig.7.32. Canal de comunicaie serial asincron RS232 ntr-un sistem cu P 8085
RD WR D7D0 CS A1 A0
8253
GATE2 CLK2 OUT2
Magistrala de adrese
Magistrala de comand
A1 A0
I/OWI/OR
RD WR D7D0 CS C/D
CLK RESET8251
TxCLK TxRDY
RxCLK RxRDY
TxD RxD RTS CTS
A0
I/OWI/OR
T1IN R1OUT T2IN R2OUT
MAX232
T1OUT R1IN T2OUT R2IN
Vcc
TxD RxD RTS CTS
Linii RS232
fCLK (de la 8085)
Magistrala de date
La
SINT
RESET