Tartalomjegyzék:

A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI: 13 lépés
A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI: 13 lépés

Videó: A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI: 13 lépés

Videó: A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI: 13 lépés
Videó: Дэниел Шмахтенбергер: Уничтожат ли нас технологии? 2024, Július
Anonim
A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI
A SPI KOMMUNIKÁCIÓS PROTOKOLL ALAPJAI

Amikor egy mikrokontrollert egy érzékelőhöz, kijelzőhöz vagy más modulhoz csatlakoztat, elgondolkodik -e valaha azon, hogy a két eszköz hogyan beszél egymással? Pontosan mit mondanak? Hogyan képesek megérteni egymást?

Az elektronikus eszközök közötti kommunikáció olyan, mint az emberek közötti kommunikáció. Mindkét félnek ugyanazt a nyelvet kell beszélnie. Az elektronikában ezeket a nyelveket kommunikációs protokolloknak nevezik. Szerencsénkre csak néhány kommunikációs protokollt kell ismernünk, amikor a legtöbb barkács elektronikai projektet építjük. Ebben a cikksorozatban a három leggyakoribb protokoll alapjait tárgyaljuk: a soros perifériás interfész (SPI), az integrált áramkör (I2C) és az univerzális aszinkron vevő/adó (UART) által vezérelt kommunikáció. Először néhány alapvető fogalommal kezdjük az elektronikus kommunikációt, majd részletesen elmagyarázzuk, hogyan működik az SPI. A következő cikkben az UART által vezérelt kommunikációról fogunk beszélni, a harmadik cikkben pedig az I2C -be fogunk merülni. Az SPI, az I2C és az UART valamivel lassabbak, mint az olyan protokollok, mint az USB, az Ethernet, a Bluetooth és a WiFi, de sokkal egyszerűbbek és kevesebb hardvert és rendszer erőforrást használnak. Az SPI, az I2C és az UART ideális a mikrokontrollerek, valamint a mikrovezérlők és az érzékelők közötti kommunikációhoz, ahol nincs szükség nagy mennyiségű nagy sebességű adat továbbítására.

1. lépés: SERIAL VS. PÁRHELYES KOMMUNIKÁCIÓ

SOROZAT VS. PÁRHELYES KOMMUNIKÁCIÓ
SOROZAT VS. PÁRHELYES KOMMUNIKÁCIÓ

Az elektronikus eszközök úgy kommunikálnak egymással, hogy adatbiteket küldenek az eszközök között fizikailag csatlakoztatott vezetékeken keresztül. A bit olyan, mint egy szó betűje, kivéve a 26 betű helyett (az angol ábécében), a bit bináris, és csak 1 vagy 0 lehet. A bitek gyors feszültségváltozással kerülnek át az egyik eszközről a másikra. Az 5 V -on működő rendszerben a 0 bitet 0 V rövid impulzusként, az 1 bitet pedig egy 5 V -os rövid impulzusként közlik.

Az adatok bitjei párhuzamos vagy soros formában továbbíthatók. A párhuzamos kommunikáció során az adatok bitjeit egyszerre küldik el, mindegyiket külön vezetéken keresztül. A következő ábra a „C” betű párhuzamos továbbítását mutatja bináris (01000011) formában:

2. lépés:

Soros kommunikációban a biteket egyenként, egyetlen vezetéken keresztül küldik el. A következő ábra a „C” betű soros továbbítását mutatja binárisan (01000011):

3. lépés:

Kép
Kép

4. lépés: BEVEZETÉS AZ SPI KOMMUNIKÁCIÓBA

BEVEZETÉS AZ SPI KOMMUNIKÁCIÓHOZ
BEVEZETÉS AZ SPI KOMMUNIKÁCIÓHOZ

Az SPI egy közös kommunikációs protokoll, amelyet sok különböző eszköz használ. Például az SD -kártya modulok, az RFID kártyaolvasó modulok és a 2,4 GHz -es vezeték nélküli adó/vevőegységek mind SPI -t használnak a mikrokontrollerekkel való kommunikációhoz.

Az SPI egyedülálló előnye, hogy az adatok megszakítás nélkül továbbíthatók. Bármilyen számú bit küldhető vagy fogadható folyamatos folyamban. Az I2C és az UART esetén az adatokat csomagokban küldik, meghatározott bitszámra korlátozva. A kezdési és leállítási feltételek meghatározzák minden csomag kezdetét és végét, így az adatok megszakadnak az átvitel során. Az SPI-n keresztül kommunikáló eszközök master-slave kapcsolatban állnak. A mester a vezérlő eszköz (általában mikrokontroller), míg a szolga (általában érzékelő, kijelző vagy memóriachip) utasításokat fogad el a mestertől. Az SPI legegyszerűbb konfigurációja egyetlen master, egyetlen slave rendszer, de egy master több slave -t is vezérelhet (erről bővebben alább).

5. lépés:

Kép
Kép

6. lépés:

MOSI (Master Output/Slave Input) - Vonal a mester számára, hogy adatokat küldjön a slave -nek.

MISO (Master Input/Slave Output) - Vonal a slave számára, hogy adatokat küldjön a masternek.

SCLK (Óra) - Vonal az órajelhez.

SS/CS (Slave Select/Chip Select) - Vonal a mester számára, hogy kiválassza, melyik slave -nek küld adatokat

7. lépés:

Kép
Kép

*A gyakorlatban a slave -ek számát korlátozza a rendszer terhelhetősége, ami csökkenti a master képességét a feszültségszintek közötti pontos váltásra.

8. lépés: HOGYAN MŰKÖDIK A SPI

AZ ÓRA

Az órajel szinkronizálja az adatbitek kimenetét a mestertől a bitek mintavételezéséhez a szolga által. Minden órajelciklusban egy bit adat kerül továbbításra, így az adatátvitel sebességét az órajel frekvenciája határozza meg. Az SPI kommunikációt mindig a mester kezdeményezi, mivel a mester konfigurálja és generálja az órajelet.

Bármilyen kommunikációs protokoll, ahol az eszközök órajelet osztanak meg, szinkronnak nevezik. Az SPI egy szinkron kommunikációs protokoll. Vannak aszinkron módszerek is, amelyek nem használnak órajelet. Például az UART kommunikációban mindkét oldal egy előre konfigurált adatátviteli sebességre van beállítva, amely diktálja az adatátvitel sebességét és időzítését.

Az órajel az SPI -ben módosítható az óra polaritásának és az órafázisnak a tulajdonságaival. Ez a két tulajdonság együtt határozza meg, hogy mikor adják ki a biteket, és mikor vesznek mintát. A mester beállíthatja az óra polaritását, hogy lehetővé tegye a bitek kimenetét és mintavételezését az órajel emelkedő vagy csökkenő szélén. Az órafázis beállítható úgy, hogy a kimenet és a mintavétel az óraciklus első vagy második szélén történjen, függetlenül attól, hogy emelkedik vagy csökken.

SLAVE SELECT

A mester kiválaszthatja, hogy melyik slave -rel akar beszélni, ha a slave CS/SS vonalát alacsony feszültségszintre állítja. Tétlen, nem sugárzó állapotban a slave-kiválasztó vezetéket magas feszültség szinten tartják. A master -en több CS/SS csap is rendelkezésre állhat, amelyek lehetővé teszik több slave párhuzamos bekötését. Ha csak egy CS/SS tüske van jelen, akkor több slave-t be lehet kötni a masterhez láncoltatással.

TÖBB SZOLGÁK SPI

Beállítható egyetlen mesterrel és egyetlen szolga működtetésére, és beállítható több szolga segítségével, amelyeket egyetlen mester irányít. Kétféle módon lehet több slave -t csatlakoztatni a masterhez. Ha a masternek több slave -kiválasztó csapja van, akkor a slave -eket párhuzamosan lehet bekötni az alábbiak szerint:

9. lépés:

Kép
Kép

10. lépés:

MOSI ÉS MISO

A master bitről bitre küldi az adatokat a slave -nek, sorban a MOSI vonalon keresztül. A slave megkapja a mestertől kapott adatokat a MOSI tűn. A mestertől a slave -nek küldött adatokat általában először a legjelentősebb bittel küldik. A slave a MISO vonalon keresztül is sorban küldheti vissza az adatokat a masternek. A slave -ből a masternek küldött adatokat általában először a legkevésbé szignifikáns bittel küldik. SPI ADATÁTVITELI LÉPÉSEK 1. A mester az órajelet adja ki:

11. lépés:

Kép
Kép

Ha csak egy slave-választócsap áll rendelkezésre, a slave-eket a következőképpen lehet láncba kötni:

12. lépés:

Kép
Kép
Kép
Kép
Kép
Kép
Kép
Kép

MOSI ÉS MISO

A master bitről bitre küldi az adatokat a slave -nek, sorban a MOSI vonalon keresztül. A slave megkapja a mestertől kapott adatokat a MOSI tűn. A mestertől a slave -nek küldött adatokat általában először a legjelentősebb bittel küldik.

A slave a MISO vonalon keresztül is sorban küldheti vissza az adatokat a masternek. A slave -ből a masterhez visszaküldött adatokat általában először a legkevésbé szignifikáns bittel küldik.

Az SPI -ADATOK továbbításának lépései

*Megjegyzés A képek felsorolt oboák, amelyeket könnyen megkülönböztethet

1. A mester kiadja az órajelet:

2. A mester alacsony feszültségű állapotba kapcsolja az SS/CS csapot, ami aktiválja a slave -t:

3. A master a biteket egyenként elküldi a slave -nek a MOSI vonal mentén. A rabszolga beolvassa a biteket, amint azok érkeznek:

4. Ha válaszra van szükség, a slave egy -egy bitet ad vissza a masternek a MISO vonal mentén. A mester beolvassa a biteket, amint azok érkeznek:

13. lépés: Az SPI előnyei és hátrányai

Az SPI használatának vannak előnyei és hátrányai, és ha választhat a különböző kommunikációs protokollok között, akkor tudnia kell, mikor kell használni az SPI -t a projekt követelményeinek megfelelően:

ELŐNYÖK

Nincs kezdő és leállító bit, így az adatok megszakítás nélkül folyamatosan továbbíthatók Nincs bonyolult szolga címzési rendszer, mint az I2C Magasabb adatátviteli sebesség, mint az I2C (majdnem kétszer gyorsabb) Külön MISO és MOSI vonalak, így az adatok egyszerre küldhetők és fogadhatók idő

Hátrányok

Négy vezetéket használ (az I2C és az UART -ok kettőt használnak) Nincs nyugtázás az adatok sikeres fogadásáról (az I2C rendelkezik ezzel) Nincs olyan hibaellenőrzési forma, mint az UART paritásbitje Csak egyetlen mester számára SPI. Folytassa a sorozat második részével az UART által vezérelt kommunikáció megismeréséhez, vagy a harmadik részhez, ahol az I2C protokollt tárgyaljuk.

Ha bármilyen kérdése van, tegye fel bátran a megjegyzés rovatban, itt vagyunk, hogy segítsünk. És mindenképpen kövesse

Üdvözlettel: M. Junaid

Ajánlott: