Sisteme cu microprocesor II

Previzualizare proiect:

Extras din proiect:

1. PORTUL SERIAL USART

Portul serial USART (Universal Synchronous Asynchronous Receiver Transmitter) mai este cunoscut si sub numele de SCI (Serial Communications Interface). Portul USART poate fi configurat in modul asincron duplex (UART) si in modul sincron semi-duplex. In modul asincron portul este utilizat pentru comunicatii de date cu dispozitive de afisare CRT sau calculatoare personale PC. In acest mod, datele seriale sunt emise prin pinul RC6/TX si sunt receptionate prin pinul RC7/RX. In modul sincron, portul poate lucra ca Master sau ca Slave. In modul sincron Master, semnalul de tact serial este emis prin pinul RC6/CK iar datele se vehiculeaza prin pinul RC7/DT. In modul sincron Slave, semnalul de tact este receptionat prin pinul RC6/CK iar datele se vehiculeaza prin pinul RC7/DT. Datele se vehiculeaza pe octeti, serial si bit cu bit. Bitul care se transmite sau se receptioneaza primul este bitul LSB. Portul USART este controlat prin registrele SFR, TXSTA, RCSTA si SPBRG.

Functionarea in modul asincron emisie

In modul asincron nu se transmit tacte sincronizate. Asta inseamna ca sincronizarea trebuie luata din semnalul transmis. Rata de transfer cu care lucreaza emitatorul si receptorul trebuie sa fie aceeasi :

In aceasta relatie, BRGH este un bit din registrul TXSTA (BRGH = 1 - rata de transfer ridicata, BRGH = 0 - rata de transfer scazuta), FOSC este frecventa de tact a microcontrolerului iar (SPBRG) este continutul registrului SPBRG.

Emisia este controlata de registrul TXSTA.

Registrul TXSTA

CSRC TX9 TXEN SYNC - BRGH TRMT TX9D

-SYNC - 0 =>selectie mod asincron ; 1 =>selectie mod sincron

- TXEN - 1 =>validare emisie ; 0 =>invalidare emisie

- TX9 - fixarea modului de comunicatie(1-9 biti de date ; 0-8 biti de date)

-TX9D - bitul 9 de date ce se va emite in cazul emisiei pe 9 biti

- TRMT transmit (bitul de stare) - nu se scrie , doar se citeste

Emisia poate fi controlata cu ajutorul bitilor de intrerupere.

-TXIE - validare emisie

-TXIP - prioritate

-TXIF - indicator de intrerupere

Validarea generala a portului serial USART se realizeaza cu ajutorul bitului SPEN din registrul RCSTA (SPEN = 1 => portul USART validat ; SPEN = 0 => portul USART invalidat).

Fig. 9.1. Structura portului USART in modul emisie.

Dupa fixarea ratei de transfer (scrieri in SPBRG si BRGH) si initializarea emisiei in modul asincron (SYNC = 0, TX9 = 0 sau 1, SPEN = 1, TXEN = 1) se incarca octetul ce urmeaza a fi emis in registrul TXREG. Aceasta operatie declanseaza emisia. La scrierea in TXREG , automat TXIF se sterge. Dupa un timp, automat continutul lui TXREG trece in TSR (Transmitt Shift Register) ; simultan TX9D in TSR. Tot in acest moment TRMT se sterge si TXIF se seteaza.

TRMT=0 => emitatorul lucreaza

TXIF=1 =>este gol si poate primi o noua data

Pentru transmisia continua , in TXREG se face o alta scriere. TRMT se seteaza automat dupa transmisi ultimului bit de date sau dupa primul bit de STOP.

Fig. 9.2. Emisia unui cadru de 11 biti in modul asincron.

Pe durata emisiei, portul controleaza bitul de intrerupere TXIF si bitul TRMT. Bitul TXIF se seteaza automat in urma validarii emisiei (TXEN = 1). Aceasta este o indicatie pentru UCP ca registrul TXREG este gol si acesta poate fi incarcat. Dupa incarcare, bitul TXIF se reseteaza automat. Dupa ce continutul registrului TXREG este transferat in registrul TSR se seteaza automat bitul TXIF si se reseteaza bitul TRMT. Setarea bitului TXIF este o indicatie pentru UCP ca poate incarca din nou registrul TXREG. Bitul TRMT este resetat pe toata durata emisiei celor 8 sau 9 biti de date. Acest bit se seteaza automat la inceperea emisiei bitului de STOP, daca pe durata emisiei octetului nu s-a mai facut o incarcare in TXREG. Altfel, se continua cu emisia celui de-al doilea octet, bitul TRMT ramane in starea 0 si indica faptul ca TSR este plin.

Functionarea in modul asincron receptie

Controlul receptiei se efectueaza cu ajutorul registrului RCSTA.

Registrul RCSTA

SPEN RX9 SREN CREN ADDEN FERR OERR RX9D

-SYNC - SYNC = 0 => validare mod asincron

-SPEN - SPEN = 1 => validare port serial si configurarea pinilor RC6 si RC7 ca pini de port serial

- RX9 - RX9 = 1 => validare receptie 9 biti, RX9 = 0 => validare receptie 8 biti

-CREN - CREN = 1 => validare receptie, CREN = 0 => invalidare receptie

ADDEN se foloseste numai la receptia pe 9 biti (ADDEN = 1 => validare detectie adresa - se receptioneaza numai cadrul care are bitul 9 setat, ADDEN = 0 => se receptioneaza orice cadru).

Descarcă proiect

Pentru a descărca acest document,
trebuie să te autentifici in contul tău.

Structură de fișiere:
  • Sisteme cu microprocesor II.doc
Alte informații:
Tipuri fișiere:
doc
Diacritice:
Da
Nota:
8/10 (2 voturi)
Nr fișiere:
1 fisier
Pagini (total):
28 pagini
Imagini extrase:
28 imagini
Nr cuvinte:
13 505 cuvinte
Nr caractere:
74 308 caractere
Marime:
879.29KB (arhivat)
Publicat de:
Anonymous A.
Nivel studiu:
Facultate
Tip document:
Proiect
Domeniu:
Electrotehnică
Tag-uri:
sistem, procesor, microprocesor, comunicatii, dispozitiv, afisare
Predat:
la facultate
Materie:
Electrotehnică
Sus!