Interfete seriale
October 10, 2017 | Author: chichi69ro | Category: N/A
Short Description
Interfete seriale...
Description
INTERFEŢE SERIALE SINCRONE
Interfaţa I2C ●
I2C (Inter-Integrated Circuits) - Philips
●
Magistrală bidirecţională cu două linii: ●
Date seriale SDA (Serial Data)
●
Ceas serial SCL (Serial Clock)
Interfaţa I2C ●
Un dispozitiv conectat la magistrala I2C poate funcţiona ca: ●
●
●
●
●
Transmiţător sau receptor
Fiecare dispozitiv are o adresă unică Transmiţătoarele şi receptoarele pot funcţiona în modul master sau în modul slave. Magistrala este de tip multi-master, pentru că, potenţial, orice dispozitiv poate îndeplini funcţia de master, dar numai unul la un moment dat. Dacă cererile de a deveni master se activează simultan, atunci intervine o procedură de arbitraj.
Interfaţa I2C
●
●
Magistrala I2C originală ●
Rata de transfer maximă de 100 Kbiţi/s
●
Adrese de 7 biţi
Versiunea 2.0 (1992) ●
Mod de transfer rapid (Fast-mode), max. 400 Kbiţi/s
●
Adrese de 10 biţi
●
Posibilitatea conectării la magistrală a dispozitivelor cu adrese de 7 sau 10 biţi
Interfaţa I2C
●
Versiunea 2.1 ●
Deplasarea nivelelor de tensiune (Level-shifting) pentru conectarea dispozitivelor cu tensiuni de alimentare diferite
●
Specificaţii extinse pentru dispozitive cu tensiunea sub 2,7 V
●
Mod de transfer de viteză ridicată (High-speed) → max. 3,4 Mbiţi/s
Interfaţa I2C ●
●
Atât SDA cât şi SCL sunt linii bidirecţionale, conectate la o tensiune de alimentare pozitvă prin intermediul unui rezistor de tip pull-up. Etajele de ieşire ale dispozitivelor conectate la magistrală trebuie să fie de tip cu drenă în gol sau colector in gol pentru a putea realiza funcţia ŞI-cablat.
Interfaţa I2C Condiţii de start şi de stop ●
Condiţie de start: ●
●
Tranziţie 1-->0 a liniei SDA, SCL = 1 logic
Condiţie de stop: ●
Tranziţie 0-->1 a liniei SDA, SCL = 1 logic
Interfaţa I2C Validitatea datelor
●
Datele de pe linia SDA trebuie să fie stabile în timp ce SCL = 1 logic
●
Datele se pot schimba numai atunci când SCL = 0 logic
Interfaţa I2C Categorii de informaţii transmise pe magistrală
●
Bit de start
●
Adresa dispozitivului slave (7 sau 10 biţi)
●
Bit de citire/scriere
●
Biţi de date (segmente de câte 8 biţi)
●
Bit de confirmare (după fiecare segment de date)
●
Bit de stop
Interfaţa I2C Categorii de informaţii transmise pe magistrală
●
Numărul de octeţi din cadrul unui transfer nu este limitat
●
Receptorul poate forţa transmiţătorul într-o stare de aşteptare
Interfaţa I2C Formatul pachetelor - adresa
Formatul pachetelor - date
Interfaţa I2C Sincronizarea clock-ului
●
În urma sincronizării se va obţine un semnal de tact care va avea: - perioada Low determinată de dispozitivul cu cea mai lungă perioadă Low - perioada High determinată de dispozitivul cu cea mai scurtă perioadă High
Interfaţa I2C Arbitrarea pe magistrală ●
Două sau mai multe dispozitive master pot incepe să tramsmită simultan
●
Arbitrarea are loc pe linia SDA
●
●
Masterul care transmite un nivel High, în timp ce un alt master transmite un nivel Low va pierde arbitrarea Arbitrarea poate continua pe mai mulţi biţi, începând cu adresa si continuând cu biţii de date
Interfaţa SPI ●
●
SPI (Serial Periferical Interface) este un protocol dezvoltat de Motorola şi care a fost impus prin intermediul microcontrolerelor HC11. Este un protocol foarte rapid, care însa nu permite direct prezenţa pe magistrală a doi sau mai mulţi masteri.
●
Schema de arbitrare trebuie efectuată extern, folosind un circuit auxiliar
●
Perifericele mai lente nu pot semnaliza o cerere de întârziere a comunicaţiei
Avantaje: • viteza foarte mare • selecţia directă a slave-lui (dar, pentru fiecare slave, este nevoie de un fir separat) • simplitate in utilizare
Interfaţa SPI Dezavantaje: ●
●
●
●
chiar cu un singur slave, este nevoie de 4 fire iar cu 2 dispozitive slave, este nevoie de 5 fire. lipsa arbitrarii între masteri lipsa clock-stretching-ului – perifericele lente nu au ce căuta pe aceasta magistrală lipsa unui bit de ACK – validarea pachetelor trebuie făcută la un nivel superior
Interfaţa SPI Semnalele folosite de SPI sunt: • SCLK (Serial clock) - generat de master • MOSI (Master Output, Slave Input) - date transmise de master • MISO (Master Input, Slave Output) - date recepţionate de master • SS (Slave select) - activarea dispozitivului Slave de către master fiind activ pe zero
Interfaţa SPI Funcţionarea magistralei este următoarea: 1. Dispozitivul master iniţiază comunicaţia prin activarea semnalului SS 2. Tot master-ul este responsabil cu generarea semnalului de clock, SCLK 3. Pe durata fiecărei perioade de clock se transmite un bit de la master la slave, si un bit de la slave la master 4. După fiecare pachet de date (8, 16 biti,…) semnalul SS este dezactivat, pentru sincronizarea transmisiei
Interfaţa SPI ●
Dacă există mai multe dispozitive slave conectate la un master, fiecare dintre ele va avea o linie SS dedicată, după cum se observă in figura de mai jos Pentru un dispozitiv slave, linia SS este o linie de intrare. Atunci când linia este pusă pe 0, însemnă selecţia acelui dispozitiv slave, iar valoarea 1 semnifică deselectarea acelui dispozitiv. O tranziţie din 1 în 0 semnifică resetarea ciclului de transfer. ●
Interfaţa SPI Funcţionarea magistralei este următoarea: Comunicaţia dintre un master şi un slave se realizează în felul următor: ambele dispozitive au câte un registru de deplasare intern, care este conectat la pinii MISO şi MOSI după cum se vede în figura de mai jos: ●
View more...
Comments