Interfete de comunicare PDF
Document Details
![SpellbindingLasVegas](https://quizgecko.com/images/avatars/avatar-5.webp)
Uploaded by SpellbindingLasVegas
Technical University of Cluj-Napoca
Tags
Summary
Documentul prezintă diferite interfețe de comunicare utilizate în microcontrolere. Sunt detaliate comunicarea paralelă, serială, asincronă și sincronă. Sunt incluse exemple de interfețe precum UART, SPI și I²C.
Full Transcript
**INTERFEȚE DE COMUNICAȚIE** 1. **Comunicare între microcontrolere**: - Microcontrolerele pot comunica între ele folosind diferite metode. - Ele pot trimite un singur bit (comunicare serială) sau mai mulți biți simultan (comunicare paralelă). 2. **Comunicare paralel...
**INTERFEȚE DE COMUNICAȚIE** 1. **Comunicare între microcontrolere**: - Microcontrolerele pot comunica între ele folosind diferite metode. - Ele pot trimite un singur bit (comunicare serială) sau mai mulți biți simultan (comunicare paralelă). 2. **Comunicare paralelă**: - Este rapidă, deoarece trimite mai multe biți în același timp. - Necesită mai multe conexiuni fizice între microcontrolere. 3. **Comunicare serială**: - Este mai lentă decât cea paralelă, dar necesită mai puține conexiuni. - Este folosită pentru a economisi spațiu și resurse. 4. **Interfețe seriale ale microcontrolerele AVR**: - AVR suportă interfețe seriale precum UART (USART), SPI și I2C. - Acestea sunt utilizate pentru a comunica cu alte dispozitive sau microcontrolere. - Unele microcontrolere AVR pot avea și interfețe USB sau CAN. 5. **Interfața SPI**: - Este adesea folosită pentru a programa microcontrolerele, de exemplu, pentru a încărca programe în memoria FLASH. 1. **Comunicare Asincronă**: - **Descriere**: Permite transmiterea serială de date fără un ceas comun. - **Componente**: Utilizează un transmitător și un receptor. - **Exemplu**: UART (Universal Asynchronous Receiver-Transmitter) este un exemplu comun de comunicare asincronă. 2. **Comunicare Sincronă**: - **Descriere**: Permite transmiterea serială de date cu un ceas comun pentru sincronizare. - **Componente**: Utilizează un transmitător și un receptor. - **Exemplu**: SPI (Serial Peripheral Interface) este un exemplu de comunicare sincronă. 1. **Simplex**: - **Descriere**: Comunicația Simplex permite transmisia datelor într-o singură direcție la un moment dat. - **Utilizare**: Este utilă în situații unde comunicarea este unidirecțională, cum ar fi trimiterea de date de la un senzor către un microcontroler. 2. **Full-Duplex**: - **Descriere**: Comunicația Full-Duplex permite transmisia și recepția simultană a datelor între cele două microcontrolere. - **Utilizare**: Este ideală pentru aplicații care necesită schimb de date în ambele direcții în același timp, cum ar fi comunicațiile între două dispozitive care trebuie să se sincronizeze constant. 3. **Half-Duplex**: - **Descriere**: Comunicația Half-Duplex permite transmisia și recepția datelor în ambele direcții, dar nu simultan. Cele două microcontrolere trebuie să se alternzeze între transmisie și recepție. - **Utilizare**: Este utilă în aplicații unde comunicarea bidirecțională este necesară, dar nu trebuie să fie simultană, cum ar fi comunicațiile între un - microcontroler și un modul de comunicație wireless. 4. **Mod de funcționare**: - UART este o interfață serială Full-Duplex, ceea ce înseamnă că poate transmite și recepționa date simultan. - Funcționează în mod asincron, ceea ce necesită sincronizarea între transmisie și recepție (de obicei cu ajutorul unui USART - Universal Synchronous/Asynchronous Receiver-Transmitter). 5. **Structura cadrului de date**: - **Start Bit**: Fiecare transmisie începe cu un bit de start, care semnalează începutul unui nou cadru de date. - **Biți de date**: UART transmite datele pe 8 biți (de la D0 la D7), cu bitul cel mai puțin semnificativ (LSB) trimis primul. 6. **Viteze de comunicare**: - Viteza maximă a unui microcontroler poate fi de 2,5 Mbps, în funcție de frecvența de oscilație (de exemplu, 20 MHz). 7. **Baudrate**: - Baudrate-ul reprezintă numărul de schimbări de stare ale semnalului pe secundă. 1. **Mod de funcționare**: - SPI este o interfață de comunicare sincronă, ceea ce înseamnă că utilizați un semnal de ceas (SCLK) pentru sincronizarea datelor între dispozitivele master și slave. 2. **Caracteristici**: - **Full-Duplex**: SPI permite schimbul simultan de date între master și slave, ceea ce înseamnă că ambele părți pot transmite și recepționa date în același timp. 1. **Mod de funcționare**: - I²C este o interfață serială care funcționează cu doi fire: SCL (Serial Clock Line) pentru ceas și SDA (Serial Data Line) pentru date. 2. **Viteză de comunicare**: - Viteza standard de comunicare este de până la 400 kHz, deși există variante care pot atinge viteze mai mari. 3. **Comunicare bidirecțională**: - Comunicarea este bidirecțională, folosind aceleași două semnale (SCL și SDA) pentru transmisie și recepție. - **Codul Mașină (Machine Language):** - Este nativ pentru procesor, fiind executat direct de hardware. - Instrucțiunile sunt compuse din cod binar 0 și 1. - **Limba de Asamblare (Assembly Language):** - Un limbaj puțin mai evoluat, astfel încât citirea instrucțiunilor fiind mai ușoară. - Corespondență unu-la-unu cu instrucțiunile codului mașină. - **Asamblorul (Assembler):** Convertește limbajul de asamblare în cod mașină. - **Compilatorul (Compiler):** Convertește limbajele de nivel înalt (C, Pascal, Basic) în cod mașină. Aceasta se face direct sau indirect prin intermediul unui asamblor. - Limbajul de asamblare oferă acces direct la toate blocurile interne și resursele μC. - Limbajul de asamblare oferă posibilitatea scrierii de cod optimizat (cod rapid și/sau compact).