Či už ide o počítačové periférie, inteligentné spotrebiče, zariadenia internetu vecí (IoT) alebo elektronické zariadenia meracie nástroje, všetky používajú sériové komunikačné protokoly na pripojenie rôznych elektronických komponentov spolu.

Tieto zložky sa zvyčajne skladajú z mikrokontroléra a podradených modulov, ako je snímač odtlačkov prstov, čo ESP8266 (Wi-Fi), modul serva a sériové displeja.

Tieto zariadenia používajú rôzne druhy komunikačných protokolov. Nižšie sa dozviete o niektorých z najpopulárnejších sériových komunikačných protokolov, ako fungujú, aké sú ich výhody a prečo sa stále používajú.

Čo je sériová komunikácia?

Protokoly sériovej komunikácie sú tu už od vynálezu Morseovej abecedy v roku 1838. Dnes moderné sériové komunikačné protokoly využívajú rovnaké princípy. Signály sa generujú a prenášajú na jedinom vodiči opakovaným skratovaním dvoch vodičov. Tento skrat funguje ako spínač; zapína (vysoká) a vypína (nízka) a poskytuje binárne signály. Spôsob, akým sa tento signál prenáša a prijíma, bude závisieť od typu použitého sériového komunikačného protokolu.

instagram viewer
Fotografický kredit: shankar.s/Wikimedia Commons

S vynálezom tranzistora a inovácií, ktoré nasledovalo, inžinieri a tinkerers podobne vyrobené processesing jednotky a pamäte menšie, rýchlejšie a energeticky úsporné. Tieto zmeny si vyžiadali, aby zbernicové komunikačné protokoly boli rovnako technologicky vyspelé ako pripájané komponenty. Teda vynález sériových protokolov ako UART, I2C a SPI. Aj keď sú tieto sériové protokoly staré niekoľko desaťročí, stále sú preferované pre mikrokontroléry a programovanie na holého kovu.

UART (univerzálny asynchrónny prijímač-vysielač)

Protokol UART je jedným z najstarších a zároveň najspoľahlivejších protokolov sériovej komunikácie, ktoré dodnes používame. Tento protokol používa dva vodiče známe ako Tx (vysielanie) a Rx (prijímanie) na komunikáciu oboch komponentov.

Na prenos údajov musí vysielač aj prijímač súhlasiť s piatimi spoločnými konfiguráciami, ktorými sú:

  • Prenosová rýchlosť: Prenosová rýchlosť udáva, ako rýchlo sa majú prenášať dáta.
  • Dĺžka údajov: Dohodnutý počet bitov, ktoré si prijímač uloží do svojich registrov.
  • Štart bit: Nízky signál, ktorý dáva prijímaču vedieť, kedy sa majú preniesť dáta.
  • Stop Bit: Vysoký signál, ktorý dáva prijímaču vedieť, kedy bol odoslaný posledný bit (najdôležitejší bit).
  • Paritný bit: Buď vysoký alebo nízky signál používaný na kontrolu správnosti alebo poškodenia odosielaných údajov.

Keďže UART je asynchrónny protokol, nemá vlastné hodiny, ktoré regulujú rýchlosť prenosu dát. Alternatívne využíva prenosovú rýchlosť na časovanie, keď sa prenáša bit. Zvyčajná prenosová rýchlosť používaná pre UART je 9600 baudov, čo znamená prenosovú rýchlosť 9600 bitov za sekundu.

Ak by sme si to spočítajte a rozdeliť jeden kúsok po 9600 Bd, môžeme vypočítať, ako rýchlo jeden bit dát sa prenáša do prijímača.

1/9600 =104 mikrosekúnd

To znamená, že naše zariadenia UART začnú počítať 104 mikrosekúnd, aby vedeli, kedy bude vysielať ďalší bit.

Po pripojení zariadení UART je predvolený signál vždy zvýšený. Keď zaznamená nízkofrekvenčný signál, prijímač začne počítať 104 mikrosekúnd plus ďalších 52 mikrosekúnd, než začne ukladať bity do svojich registrov (pamäť).

Vzhľadom k tomu, že bolo už dohodnuté, že po ôsmich bitoch mala byť dĺžka dát, akonáhle je uložené osem bitov dát, bude to začne s kontrolou parity pre overenie, či dáta sú párne alebo nepárne. Po kontrole parity stop bit vyšle vysoký signál, aby upozornil zariadenia, že celých osem bitov údajov bolo úspešne prenesených do prijímača.

Keďže ide o najminimalistickejší sériový protokol využívajúci iba dva vodiče, UART sa dnes bežne používa v čipových kartách, SIM kartách a automobiloch.

Súvisiace: Čo je SIM karta? Veci, ktoré potrebujete vedieť

SPI (sériové periférne rozhranie)

SPI je ďalší populárny sériový protokol používaný na rýchlejšie prenosové rýchlosti okolo 20 Mbps. Používa celkovo štyri vodiče, a to SCK (Serial Clock Line), MISO (Master Out Slave In), MOSI (Master In Slave Out) a SS/CS (Chip Select). Na rozdiel od UART používa SPI formát master-to-slave na ovládanie viacerých slave zariadení iba s jedným master.

MISO a MOSI fungujú ako Tx a Rx UART, ktoré sa používajú na prenos a príjem dát. Chip Select sa používa na výber, s ktorým podriadeným zariadením chce master komunikovať.

Vzhľadom k tomu, SPI je synchrónny protokol, používa vstavaný hodiny od majstra, aby bolo ako master a slave zariadení beží na rovnakej frekvencii. To znamená, že tieto dve zariadenia už nemusia zjednávať prenosovú rýchlosť.

Protokol začína tým, že master vyberie podriadené zariadenie znížením jeho signálu na špecifický SS/CK pripojený k podriadenému zariadeniu. Keď podriadená jednotka prijme slabý signál, začne počúvať SCK aj MOSI. Master potom odošle štartovací bit pred odoslaním bitov, ktoré obsahujú dáta.

MOSI aj MISO sú plne duplexné, čo znamená, že môžu vysielať a prijímať dáta súčasne.

Vďaka svojej schopnosti pripojiť sa k viacerým podriadeným počítačom, plne duplexnej komunikácii a nižšej spotrebe energie ako iné synchrónne protokoly ako I2C, SPI sa používajú v pamäťových zariadeniach, digitálnych pamäťových kartách, prevodníkoch ADC na DAC a kryštáloch zobrazuje pamäť.

I2C (Inter-Integrated Circuit)

I2C je ďalší synchrónny sériový protokol ako SPI, ale má oproti nemu niekoľko výhod. Patrí medzi ne možnosť mať viacero masterov a slave, jednoduché adresovanie (nie je potrebný čip Select), pracujúci s rôznymi napätiami a pomocou iba dvoch vodičov pripojených k dvom pull-up odpory.

I2C sa často používa v mnohých zariadeniach internetu vecí, priemyselných zariadeniach a spotrebnej elektronike.

Dva kolíky v protokole I2C sú SDA (Serial Data Line), ktorý prenáša a prijíma dáta, a kolík SCL (Serial Clock Line), ktorý funguje ako hodiny.

  1. Protokol začína tak, že master odošle štartovací bit (nízky) zo svojho kolíka SDA, za ktorým nasleduje sedembitová adresa, ktorá vyberá podriadenú jednotku, a jeden bit až pre výber čítania alebo zápisu.
  2. Po obdržaní štart bit a adresu, podriadená potom odošle potvrdzovací bit veliteľovi a začne počúvať na SCL a SDA pre prichádzajúce prenosy.
  3. Keď to master prijme, vie, že spojenie bolo vytvorené so správnym slave zariadením. Master teraz vyberie, ku ktorému konkrétnemu registru (pamäti) z podriadeného zariadenia chce pristupovať. Robí to odoslaním ďalších ôsmich bitov špecifikujúcich, ktorý register sa má použiť.
  4. Po prijatí adresy podriadená jednotka teraz pripraví výberový register pred odoslaním ďalšieho potvrdenia nadriadenému.
  5. Po výbere konkrétneho podriadeného zariadenia a toho, ktorý z jeho registrov sa má použiť, master nakoniec odošle dátový bit podriadenému.
  6. Po odoslaní údajov sa hlavnému zariadeniu odošle záverečný potvrdzovací bit predtým, ako master skončí stop bitom (vysoký).

Súvisiace: Najlepšie Arduino IoT projekty

Prečo sú tu sériové komunikácie

S nárastom paralelných a mnohých bezdrôtových protokolov sériová komunikácia nikdy nespadla z popularity. Všeobecne možno používať iba dva až štyri vodiče pre vysielanie a príjem dát, sériové protokoly sú neoddeliteľnou spôsob komunikácie pre elektroniku, ktoré majú iba niekoľko portov pre náhradnú.

Ďalším dôvodom je jeho jednoduchosť, ktorá sa premieta do spoľahlivosti. S iba niekoľkými káblami, ktoré odosielajú dáta raz za čas, sériový prenos preukázal svoju spoľahlivosť pri odosielaní kompletných paketov dát bez akejkoľvek straty alebo poškodenia pri prenose. Dokonca aj pri vysokých frekvenciách a komunikácii na dlhší dosah sériové protokoly stále prekonávajú mnohé moderné paralelné komunikačné protokoly, ktoré sú dnes k dispozícii.

Aj keď si mnohí môžu myslieť, že sériová komunikácia ako UART, SPI a I2C má nevýhodu Vzhľadom na to, že sú staré a zastarané, faktom zostáva, že svoju spoľahlivosť dokázali už pri viacerých desaťročia. Protokoly je to stará bez skutočnej náhrady iba naznačuje, že sú v skutočnosti nevyhnutné, a bude aj naďalej používať v elektronike v dohľadnej budúcnosti.

Raspberry Pi, Pico, Arduino a ďalšie jednodoskové počítače a mikrokontroléry

Ste zmätení medzi SBC ako Raspberry Pi a mikrokontrolérmi ako Arduino a Raspberry Pi Pico? Tu je to, čo potrebujete vedieť.

Prečítajte si ďalej

zdieľamTweetujteEmail
Súvisiace témy
  • Technológia vysvetlená
  • Využitie dát
O autorovi
Muo Staff

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber