Interfața UART: descriere, utilizare
Amintiți-vă când imprimantele, șoarecii și modemurile au cabluri groase cu acești conectori incomode uriași? Cei care literalmente trebuiau să fie înșurubați în computer? Puțini oameni știu că aceste componente UART au fost folosite pentru a comunica cu computerul. Aproape complet înlocuit aceste cabluri și conectori vechi cu tehnologie USB. Interfețele UART descrise în acest articol nu fac parte din trecut. Acestea sunt folosite în multe proiecte electronice DIY pentru a conecta cititoare de carduri GPS, Bluetooth și RFID la Pi, Arduino sau alte microcontrolere.
conținut
Interfața UART: descriere
UART înseamnă un receptor / transmițător universal asincron. Acesta nu este un protocol de comunicare, cum ar fi SPI și I2C, ci un circuit fizic în microcontroler. Scopul principal este transmiterea și primirea de informații. Una dintre cele mai bune realizări ale tehnologiei este că utilizează numai două fire.
Interfața UART este două dispozitive care schimbă date între ele. Sursa de transmisie convertește informațiile din dispozitivul de comandă, cum ar fi procesorul central, în formă serială, transmite în ordine secvențială către UART-ul de recepție, care convertește valorile către dispozitivul de recepție. Pentru a transfera informații între două dispozitive, sunt necesare numai două fire.
Introducere în comunicarea UART
Transmiteți transmisia UART RS485t este asincronă, ceea ce înseamnă că nu există niciun semnal pentru a sincroniza ieșirea biților de la dispozitivul de trimitere la cel care primește. În locul semnalului de ceas, UART-ul de transmisie adaugă biții de start și de sfârșit ai pachetului transmis. Acești parametri determină începutul și sfârșitul documentului.
Atunci când UART-ul de recepție detectează un bit de pornire, începe să citească biții de intrare cu o anumită frecvență, cunoscută ca rata de transmisie. Rata de transfer a datelor este o măsură a vitezei exprimată într-o unitate de măsură, bit / s. Ambele dispozitive trebuie să funcționeze la aproximativ aceeași frecvență de transmisie. Rata de transmisie între dispozitivele de trimitere și recepție poate fi diferită cu 10%.
Ambele instrumente trebuie, de asemenea, configurate să transmită și să primească aceeași structură a pachetelor.
UART - ce este aceasta și cum funcționează?
UART, care va transmite informații, o primește de la magistrala de date. Este folosit pentru a trimite informații unui alt dispozitiv, cum ar fi un procesor, memorie sau microcontroler. După ce UART-ul de transmisie primește date paralele din magistrala de date, acesta adaugă un pic de biți de start, paritate și oprire, creând un pachet de date. Apoi, pachetul este afișat secvențial, în părți. UART-ul de recepție citește bitul de date la ieșirea lui. UART-ul de recepție convertește informațiile într-o formă paralelă, elimină biții de pornire și biții de oprire. În cele din urmă, UART-ul receptoare transmite pachetul de date paralel cu magistrala de date la capătul de recepție.
Linia de transmisie este de obicei ținută la un nivel de înaltă tensiune atunci când nu transmite informații. Pentru a porni transferul de date, UART-ul de transmisie trage linia de transmisie de la mare la joasă pentru un ciclu de ceas. Când UART-ul de recepție detectează o tranziție de la mare la joasă tensiune, începe să citească biții din cadrul de date la o rată de transfer.
Caracteristici tehnice
Sistemul UART de bază furnizează o comunicație full-duplex de viteză fiabilă, moderată, cu trei semnale: Tx (date seriale transmise), Rx (date seriale recepționate) și masă. Spre deosebire de alte protocoale, cum ar fi SPI și I2C, nu este necesar un semnal de ceas, deoarece utilizatorul furnizează hardware-ul UART cu informațiile de timp necesare.
Un semnal tipic de date în descrierea unei interfețe UART este pur și simplu o tensiune care trece între un logic scăzut și o valoare logică ridicată. Receptorul poate transforma corect aceste stări logice în date digitale numai dacă știe când să încerce semnalul. Acest lucru se poate face cu ușurință folosind un semnal de ceas separat. De exemplu, transmițătorul actualizează semnalul de date de pe fiecare margine a frontalului, iar apoi receptorul eșantionează datele de pe fiecare muchie trailing.
Termeni-cheie
Bitul de pornire este primul bit al unei transmisii de un singur octet. Aceasta indică faptul că linia de date iese din starea inactivă. Starea inactivă are de obicei o înălțime logică, deci bitul de pornire este logic scăzut.
Bitul de pornire este bitul informațiilor despre serviciu. Aceasta înseamnă că facilitează comunicarea dintre receptor și transmițător, dar nu transmite date semnificative.
Bitul de stop este ultimul bit al unui transfer de un octet. Nivelul său logic este același cu starea inactivă a semnalului, adică maximul logic.
Procedură pas cu pas
Pentru a semnala finalizarea unui pachet de date, UART-ul de trimitere conectează o legătură de date de la o tensiune joasă la o tensiune înaltă pentru doi biți de durată.
Descrierea interfeței UART:
UART-ul de transmisie recepționează date în paralel din magistrala de date și adaugă bitul de pornire, bitul de paritate și biții de oprire la cadrul de date.
Întregul pachet este trimis secvențial de la transmisia către UART-ul receptoare, care eșantionează linia de date cu rata de date preconfigurată.
UART-ul de recepție elimină bitul de pornire, bitul de paritate și bitul de oprire din cadrul de date, convertește datele seriale în paralel, le transmite la magistrala de date de pe partea receptoare.
Convertește octeții recepționați de la computer prin circuite paralele într-un flux bit serial pentru transmisia de ieșire.
Atunci când o transmisie de intrare convertește un flux serial de biți în octeți pe care computerul le procesează.
Adăugă un bit de paritate (dacă a fost selectat) de transmisii de ieșire, verifică paritatea byte-urilor primite (dacă este selectată), aruncă paritatea bitului.
Adaugă limite de început și de sfârșit ale ieșirilor, le elimină din transferurile primite.
Avantaje și dezavantaje
Protocolul de comunicare nu sunt perfecte, dar UART sunt destul de bune la ceea ce fac. Iată câteva avantaje și dezavantaje care vă vor ajuta să decideți dacă îndeplinesc nevoile proiectului dvs.:
avantaje:
Sunt utilizate numai două fire.
Nu există semnal de sincronizare.
Are un bit de paritate pentru verificarea erorilor.
Structura pachetului de date poate fi modificată dacă ambele părți sunt configurate pentru aceasta.
Metodă bine documentată și folosită pe scară largă.
dezavantaje:
Dimensiunea cadrului de date este limitată la maximum 9 biți.
Nu suportă mai multe sisteme master subordonate sau multiple.
În plus, rata de transfer a datelor pentru fiecare interfață UART Arduino ar trebui să se situeze în intervalul de 10% una de cealaltă.
- SATA (interfață): tipuri și viteză
- Interfețe RS-232: prezentare generală a tipurilor și tipurilor de mărimi
- S / PDIF - ce este?
- Programatorul lui Gromov: numire, descriere
- Cablu RS-232: descriere, desemnare, caracteristici tehnice
- Ce este o interfață SPI?
- Ce este pinout-ul USB?
- Conectori optici: scop, tipuri, caracteristici ale conectorilor
- Conector VGA: atribuire, descriere, fixare
- Conector DVI: descriere, funcție, caracteristici ale dispozitivului
- Conector SMA: descriere, scop, clasificare a dispozitivului
- Porturi HDMI: scopul, descrierea interfeței
- Conector D-SUB: denumire, descriere, clasificare a dispozitivului
- Interfață USB-B Prezentare generală
- Cablu cu modem nul: descriere a interfeței, funcții, cabluri
- Adaptor DVI-HDMI: descriere, scop, caracteristici tehnice ale dispozitivului
- Arduino pentru începători: instrucțiuni pas cu pas. Programare și proiecte Arduino: de unde să…
- Interfață I2C: descriere în limba rusă
- Interfața utilizator
- Prezentare generală a principalelor interfețe de transfer de date
- Codul Manchesterului este ce?