Kazalo:

OSNOVE PROTOKOLA KOMUNIKACIJE SPI: 13 korakov
OSNOVE PROTOKOLA KOMUNIKACIJE SPI: 13 korakov

Video: OSNOVE PROTOKOLA KOMUNIKACIJE SPI: 13 korakov

Video: OSNOVE PROTOKOLA KOMUNIKACIJE SPI: 13 korakov
Video: Architecture Kata #1 - Разбор с экспертом [Как работает настоящий Solution Architect] #ityoutubersru 2024, Julij
Anonim
OSNOVE PROTOKOLA SPI KOMUNIKACIJE
OSNOVE PROTOKOLA SPI KOMUNIKACIJE

Ko povežete mikrokrmilnik s tipalom, zaslonom ali drugim modulom, kdaj pomislite, kako se napravi pogovarjata? Kaj točno govorijo? Kako se lahko razumejo?

Komunikacija med elektronskimi napravami je kot komunikacija med ljudmi. Obe strani morata govoriti isti jezik. V elektroniki se ti jeziki imenujejo komunikacijski protokoli. Na srečo za nas obstaja le nekaj komunikacijskih protokolov, ki jih moramo poznati pri gradnji večine projektov elektronike DIY. V tej seriji člankov bomo razpravljali o osnovah treh najpogostejših protokolov: Serijski periferni vmesnik (SPI), Inter-integrirano vezje (I2C) in Univerzalna asinhrona povezava sprejemnik/oddajnik (UART). Najprej bomo začeli z nekaj osnovnimi pojmi o elektronski komunikaciji, nato pa podrobno razložili, kako deluje SPI. V naslednjem članku bomo razpravljali o komunikaciji, ki temelji na UART, v tretjem članku pa se bomo poglobili v I2C. SPI, I2C in UART so precej počasnejši od protokolov, kot so USB, ethernet, Bluetooth in WiFi, vendar so veliko bolj preprosti in uporabljajo manj strojne in sistemske vire. SPI, I2C in UART so idealni za komunikacijo med mikrokrmilniki ter med mikrokrmilniki in senzorji, kjer ni treba prenašati velikih količin hitrih podatkov.

1. korak: SERIAL VS. VZPOREDNA KOMUNIKACIJA

SERIJA VS. VZPOREDNA KOMUNIKACIJA
SERIJA VS. VZPOREDNA KOMUNIKACIJA

Elektronske naprave se med seboj pogovarjajo s pošiljanjem kosov podatkov po žicah, ki so med napravami fizično povezane. Bit je kot črka v besedi, razen namesto 26 črk (v angleški abecedi) je bit binarni in je lahko le 1 ali 0. Biti se prenašajo iz ene naprave v drugo s hitrimi spremembami napetosti. V sistemu, ki deluje pri 5 V, se 0 bit sporoči kot kratek impulz 0 V, 1 bit pa prek kratkega impulza 5 V.

Kosi podatkov se lahko prenašajo vzporedno ali zaporedno. Pri vzporedni komunikaciji se bitovi podatkov pošiljajo vsi hkrati, vsak po ločeni žici. Naslednji diagram prikazuje vzporedni prenos črke "C" v binarnem sistemu (01000011):

2. korak:

V serijski komunikaciji se bitovi pošiljajo eden za drugim po eni žici. Naslednji diagram prikazuje serijski prenos črke "C" v binarnem sistemu (01000011):

3. korak:

Slika
Slika

4. korak: UVOD V SPI KOMUNIKACIJO

UVOD V SPI KOMUNIKACIJO
UVOD V SPI KOMUNIKACIJO

SPI je skupni komunikacijski protokol, ki ga uporabljajo številne različne naprave. Na primer, moduli kartic SD, moduli bralnikov kartic RFID in brezžični oddajnik/sprejemnik 2,4 GHz uporabljajo SPI za komunikacijo z mikrokrmilniki.

Edinstvena prednost SPI je dejstvo, da je mogoče podatke prenašati brez prekinitev. V neprekinjenem toku je mogoče poslati ali sprejeti poljubno število bitov. Z I2C in UART se podatki pošiljajo v paketih, omejenih na določeno število bitov. Začetni in končni pogoji določajo začetek in konec vsakega paketa, zato se podatki med prenosom prekinejo. Naprave, ki komunicirajo prek SPI, so v razmerju master-slave. Glavna naprava je krmilna naprava (običajno mikrokrmilnik), medtem ko pomožni (običajno senzor, zaslon ali pomnilniški čip) sprejema navodila od glavnega. Najenostavnejša konfiguracija SPI je en sam glavni sistem, en sam podrejeni sistem, vendar en glavni lahko nadzoruje več podrejenih (več o tem spodaj).

5. korak:

Slika
Slika

6. korak:

MOSI (glavni izhod/podrejeni vhod) - Vrstica za glavno enoto za pošiljanje podatkov podrejenemu.

MISO (glavni vhod/pomožni izhod) - vrstica, v kateri podrejeni pošilja podatke glavnemu.

SCLK (Ura) - Vrstica za signal ure.

SS/CS (Slave Select/Chip Select) - Vrstica, v kateri glavni nosilec izbere, kateremu podrejenemu pošilja podatke

7. korak:

Slika
Slika

*V praksi je število podrejenih omejeno z nosilnostjo sistema, kar zmanjšuje zmožnost poveljnika za natančno preklapljanje med napetostnimi nivoji.

8. korak: KAKO DELUJE SPI

URA

Taktni signal sinhronizira izhod podatkovnih bitov iz glavnega v vzorčenje bitov s strani podrejenega. V vsakem ciklu ure se prenese en bit podatkov, zato je hitrost prenosa podatkov določena s frekvenco signala ure. Komunikacijo SPI vedno sproži glavni, saj glavni konfigurira in ustvari signal ure.

Vsak komunikacijski protokol, kjer naprave delijo signal ure, je znan kot sinhroni. SPI je sinhroni komunikacijski protokol. Obstajajo tudi asinhrone metode, ki ne uporabljajo signala ure. Na primer, v komunikaciji UART sta obe strani nastavljeni na vnaprej konfigurirano hitrost prenosa podatkov, ki določa hitrost in čas prenosa podatkov.

Signal ure v SPI je mogoče spremeniti z lastnostmi ure polarnosti in faze. Ti dve lastnosti skupaj sodelujeta pri določanju, kdaj so biti izhodni in kdaj vzorčeni. Polarnost ure lahko nastavi tako, da omogoča oddajanje bitov in vzorčenje bodisi na naraščajočem ali padajočem robu cikla ure. Fazo ure je mogoče nastaviti za izhod in vzorčenje na prvem robu ali drugem robu cikla ure, ne glede na to, ali narašča ali pada.

SLOVE SELECT

Nadzornik lahko izbere, s katerim podrejenim se želi pogovarjati, tako da podrejeno linijo CS/SS nastavi na nizko napetostno raven. V stanju mirovanja, ki ne oddaja, je podrejena linija za izbiro podrejena na visoki napetosti. Na glavni enoti je lahko na voljo več nožic CS/SS, kar omogoča vzporedno ožičenje več podrejenih. Če je prisoten samo en zatič CS/SS, lahko več podrejenih priključite na master z verižico.

VEČ RAVNIH SPI

lahko nastavite tako, da deluje z enim samim nadrejenim in enim podrejenim, lahko pa ga nastavite tudi z več podrejenimi, ki jih nadzira en sam glavni. Obstajata dva načina za povezovanje več podrejenih z nadrejenim. Če ima master več zatičnih izbirnih zatičev, lahko podrejene povežete vzporedno tako:

9. korak:

Slika
Slika

10. korak:

MOSI IN MISO

Nadzornik pošilja podatke podrejenemu bit po bit, zaporedno, po liniji MOSI. Suženj prejme podatke, poslane od glavnega, na pin MOSI. Podatki, poslani od glavnega do podrejenega, se običajno pošljejo najprej z najpomembnejšim bitom. Suženj lahko tudi pošlje podatke nazaj glavnemu sistemu prek linije MISO v zaporedju. Podatki, poslani od podrejenega nazaj k glavnemu, se običajno najprej pošljejo z najmanj pomembnim bitom. KORAKI POSREDOVANJA SPI PODATKOV 1. Master oddaja signal ure:

11. korak:

Slika
Slika

Če je na voljo samo en zatič za izbiro podrejenega, se podrejeni elementi lahko verižno verižijo tako:

12. korak:

Slika
Slika
Slika
Slika
Slika
Slika
Slika
Slika

MOSI IN MISO

Nadzornik pošilja podatke podrejenemu bit po bit, zaporedno, po liniji MOSI. Suženj prejme podatke, poslane od glavnega, na pin MOSI. Podatki, poslani od glavnega do podrejenega, se običajno pošljejo najprej z najpomembnejšim bitom.

Suženj lahko tudi pošlje podatke nazaj glavnemu sistemu prek linije MISO v zaporedju. Podatki, poslani od podrejenega nazaj k glavnemu, se običajno najprej pošljejo z najmanj pomembnim bitom.

KORAKI PRENOSA SPI PODATKOV

*Opomba Slike so navedene na gobovih, ki jih lahko preprosto ločite

1. Nadzornik oddaja signal ure:

2. Nadzorna enota preklopi pin SS/CS v nizkonapetostno stanje, kar aktivira pomožno enoto:

3. Poveljnik pošlje podatke enega za drugim podrejenem po liniji MOSI. Suženj prebere bite, ko jih prejme:

4. Če je potreben odziv, pomožni računalnik vrne podatke enega za drugim glavnemu toku vzdolž linije MISO. Mojster bere bitove, ko jih prejme:

13. korak: PREDNOSTI IN PREDNOSTI SPI

Uporaba SPI ima nekaj prednosti in slabosti, in če imate možnost izbire med različnimi komunikacijskimi protokoli, morate vedeti, kdaj uporabiti SPI v skladu z zahtevami vašega projekta:

PREDNOSTI

Brez začetnih in končnih bitov, zato je mogoče podatke pretakati neprekinjeno brez prekinitev Ni zapletenega sistema za naslavljanje podrejenih, kot je I2C Višja hitrost prenosa podatkov kot I2C (skoraj dvakrat hitrejša) Ločeni liniji MISO in MOSI, tako da je mogoče podatke pošiljati in sprejemati istočasno čas

PREDNOSTI

Uporablja štiri žice (I2C in UART uporabljata dve) Ni potrdila, da so bili podatki uspešno sprejeti (I2C ima to) Nobena oblika preverjanja napak, kot je paritetni bit v UART -u, omogoča le en sam mojster. Upajmo, da vam je ta članek omogočil boljše razumevanje SPI. Nadaljujte z drugim delom te serije, če želite izvedeti o komunikaciji, ki temelji na UART, ali s tretjim delom, kjer razpravljamo o protokolu I2C.

Če imate kakršna koli vprašanja, jih vprašajte v razdelku za komentarje, tukaj smo, da vam pomagamo. In obvezno sledite

Lep pozdrav: M. Junaid

Priporočena: