Talaan ng mga Nilalaman:
- Hakbang 1: SERIAL VS. KOMUNIKASYON NG PARALLEL
- Hakbang 2:
- Hakbang 3:
- Hakbang 4: PANIMULA SA KOMUNIKASYON ng SPI
- Hakbang 5:
- Hakbang 6:
- Hakbang 7:
- Hakbang 8: PAANO GUMAGAWA NG SPI
- Hakbang 9:
- Hakbang 10:
- Hakbang 11:
- Hakbang 12:
- Hakbang 13: Mga kalamangan at kawalan ng kalamangan ng SPI
Video: BATAYAN NG SPI KOMUNIKASYON PROTOCOL: 13 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Kapag ikinonekta mo ang isang microcontroller sa isang sensor, display, o ibang module, naisip mo ba kung paano nakikipag-usap ang dalawang aparato? Ano nga ba ang eksaktong sinasabi nila? Paano nila naiintindihan ang bawat isa?
Ang komunikasyon sa pagitan ng mga elektronikong aparato ay tulad ng komunikasyon sa pagitan ng mga tao. Ang magkabilang panig ay kailangang magsalita ng parehong wika. Sa electronics, ang mga wikang ito ay tinatawag na mga protocol ng komunikasyon. Sa kabutihang-palad para sa amin, iilan lamang ang mga protocol ng komunikasyon na kailangan naming malaman kapag nagtatayo ng karamihan sa mga proyekto sa electronics ng DIY. Sa seryeng ito ng mga artikulo, tatalakayin namin ang mga pangunahing kaalaman sa tatlong pinakakaraniwang mga protokol: Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C), at Universal Asynchronous Receiver / Transmitter (UART) driven na komunikasyon. Una, magsisimula kami sa ilang pangunahing konsepto tungkol sa elektronikong komunikasyon, pagkatapos ay ipaliwanag nang detalyado kung paano gumagana ang SPI. Sa susunod na artikulo, tatalakayin namin ang komunikasyon na hinihimok ng UART, at sa ikatlong artikulo, sumisid kami sa I2C. Ang SPI, I2C, at UART ay medyo mas mabagal kaysa sa mga protokol tulad ng USB, ethernet, Bluetooth, at WiFi, ngunit mas simple ang mga ito at gumagamit ng mas kaunting mga mapagkukunan ng hardware at system. Ang SPI, I2C, at UART ay perpekto para sa komunikasyon sa pagitan ng mga microcontroller at sa pagitan ng mga microcontroller at sensor kung saan hindi kailangang ilipat ang malalaking data na may mataas na bilis.
Hakbang 1: SERIAL VS. KOMUNIKASYON NG PARALLEL
Ang mga elektronikong aparato ay nakikipag-usap sa bawat isa sa pamamagitan ng pagpapadala ng mga piraso ng data sa pamamagitan ng mga wires na pisikal na konektado sa pagitan ng mga aparato. Ang kaunti ay tulad ng isang titik sa isang salita, maliban sa halip na 26 na titik (sa alpabetong Ingles), ang isang bit ay binary at maaari lamang maging isang 1 o 0. Ang mga bit ay inililipat mula sa isang aparato patungo sa isa pa sa pamamagitan ng mabilis na mga pagbabago sa boltahe. Sa isang sistemang nagpapatakbo sa 5 V, isang 0 bit ang ipinapahiwatig bilang isang maikling pulso ng 0 V, at isang 1 bit ay naiparating sa pamamagitan ng isang maikling pulso na 5 V.
Ang mga piraso ng data ay maaaring mailipat alinman sa kahanay o serial form. Sa kahanay na komunikasyon, ang mga piraso ng data ay ipinapadala lahat nang sabay, bawat isa sa pamamagitan ng isang hiwalay na kawad. Ipinapakita ng sumusunod na diagram ang parallel transmission ng titik na "C" sa binary (01000011):
Hakbang 2:
Sa serial komunikasyon, ang mga piraso ay ipinapadala isa-isa sa pamamagitan ng isang solong kawad. Ipinapakita ng sumusunod na diagram ang serial transmission ng titik na "C" sa binary (01000011):
Hakbang 3:
Hakbang 4: PANIMULA SA KOMUNIKASYON ng SPI
Ang SPI ay isang pangkaraniwang protocol ng komunikasyon na ginagamit ng maraming iba't ibang mga aparato. Halimbawa, ang mga module ng SD card, mga module ng RFID card reader, at 2.4 GHz wireless transmitter / receivers na gumagamit ng SPI upang makipag-usap sa mga microcontroller.
Ang isang natatanging benepisyo ng SPI ay ang katunayan na ang data ay maaaring mailipat nang walang pagkagambala. Ang anumang bilang ng mga piraso ay maaaring maipadala o matanggap sa isang tuloy-tuloy na stream. Sa I2C at UART, ang data ay ipinapadala sa mga packet, limitado sa isang tukoy na bilang ng mga piraso. Ang mga kundisyon ng pagsisimula at pagtigil ay tumutukoy sa simula at pagtatapos ng bawat packet, kaya ang data ay nagambala sa panahon ng paghahatid. Ang mga aparato na nakikipag-usap sa pamamagitan ng SPI ay nasa isang relasyon ng master-alipin. Ang master ay ang aparato ng pagkontrol (karaniwang isang microcontroller), habang ang alipin (karaniwang isang sensor, display, o memory chip) ay kumukuha ng tagubilin mula sa master. Ang pinakasimpleng pagsasaayos ng SPI ay isang solong master, solong sistema ng alipin, ngunit ang isang master ay maaaring makontrol ang higit sa isang alipin (higit pa rito sa ibaba).
Hakbang 5:
Hakbang 6:
MOSI (Master Output / Slave Input) - Linya para sa master na magpadala ng data sa alipin.
MISO (Master Input / Slave Output) - Linya para sa alipin na magpadala ng data sa master.
SCLK (Clock) - Linya para sa signal ng orasan.
SS / CS (Select Slave / Chip Select) - Linya para mapili ng master kung aling alipin ang magpapadala ng data
Hakbang 7:
* Sa pagsasagawa, ang bilang ng mga alipin ay limitado ng capacitance ng pag-load ng system, na binabawasan ang kakayahan ng master na tumpak na lumipat sa pagitan ng mga antas ng boltahe.
Hakbang 8: PAANO GUMAGAWA NG SPI
ANG ORASAN
Ang signal ng orasan ay sumasabay sa output ng mga data bits mula sa master sa sampling ng mga bits ng alipin. Ang isang piraso ng data ay inililipat sa bawat pag-ikot ng orasan, kaya't ang bilis ng paglilipat ng data ay natutukoy ng dalas ng signal ng orasan. Ang komunikasyon ng SPI ay palaging pinasimulan ng master dahil ang master ay nag-configure at bumubuo ng signal ng orasan.
Anumang mga protocol ng komunikasyon kung saan nagbabahagi ang mga aparato ng isang signal ng orasan ay kilala bilang kasabay. Ang SPI ay isang kasabay na protocol ng komunikasyon. Mayroon ding mga hindi magkakasabay na pamamaraan na hindi gumagamit ng isang signal ng orasan. Halimbawa, sa komunikasyon ng UART, ang magkabilang panig ay nakatakda sa isang paunang naka-configure na rate ng baud na nagdidikta sa bilis at oras ng paghahatid ng data.
Ang signal ng orasan sa SPI ay maaaring mabago gamit ang mga katangian ng orasan polarity at yugto ng orasan. Ang dalawang mga pag-aari na ito ay nagtutulungan upang tukuyin kung kailan ang mga piraso ay output at kapag sila ay na-sample. Ang polarity ng orasan ay maaaring itakda ng master upang pahintulutan ang mga piraso na ma-output at mai-sample sa alinman sa pagtaas o pagbagsak na gilid ng ikot ng orasan. Maaaring maitakda ang yugto ng orasan para sa output at sampling na maganap sa alinman sa unang gilid o pangalawang gilid ng cycle ng orasan, hindi alintana kung tumataas o bumabagsak ito.
PUMILI NG ULIP
Maaaring pumili ang master kung aling alipin ang nais niyang kausapin sa pamamagitan ng pagtatakda ng linya ng CS / SS ng alipin sa isang mababang antas ng boltahe. Sa idle, non-transmitting state, ang linya ng pagpili ng alipin ay pinananatili sa isang mataas na antas ng boltahe. Maaaring magamit ang maramihang mga CS / SS na pin sa master, na nagpapahintulot sa maraming mga alipin na mai-wire nang kahanay. Kung mayroon lamang isang pin na CS / SS na naroroon, maraming mga alipin ang maaaring i-wire sa master sa pamamagitan ng daisy-chaining.
Maramihang SLAVES SPI
maaaring i-set up upang mapatakbo sa isang solong master at isang solong alipin, at maaari itong mai-set up na may maraming mga alipin na kinokontrol ng isang solong master. Mayroong dalawang paraan upang ikonekta ang maraming alipin sa master. Kung ang master ay may maraming mga pin na piling alipin, ang mga alipin ay maaaring i-wire nang kahanay tulad nito:
Hakbang 9:
Hakbang 10:
MOSI AT MISO
Nagpapadala ang master ng data sa alipin ng paunti-unti, sa serial sa pamamagitan ng linya ng MOSI. Natatanggap ng alipin ang data na ipinadala mula sa master sa MOSI pin. Ang data na ipinadala mula sa panginoon sa alipin ay karaniwang ipinapadala na may pinakamahalagang bit muna. Ang alipin ay maaari ring magpadala ng data pabalik sa master sa pamamagitan ng linya ng MISO sa serial. Ang data na ipinadala mula sa alipin pabalik sa master ay karaniwang ipinapadala na may pinakamaliit na makabuluhang kaunting muna. MGA HAKBANG NG SPI DATA TRANSMISSION 1. Ang master ay naglalabas ng signal ng orasan:
Hakbang 11:
Kung may isang pin na piniling alipin lamang ang magagamit, ang mga alipin ay maaaring ma-chain ng kadena tulad nito:
Hakbang 12:
MOSI AT MISO
Nagpapadala ang master ng data sa alipin ng paunti-unti, sa serial sa pamamagitan ng linya ng MOSI. Natatanggap ng alipin ang data na ipinadala mula sa master sa MOSI pin. Ang data na ipinadala mula sa panginoon sa alipin ay karaniwang ipinapadala na may pinakamahalagang bit muna.
Ang alipin ay maaari ring magpadala ng data pabalik sa master sa pamamagitan ng linya ng MISO sa serial. Ang data na ipinadala mula sa alipin pabalik sa master ay karaniwang ipinapadala na may pinakamaliit na makabuluhang kaunting muna.
HAKBANG NG SPI DATA TRANSMISSION
* Tandaan Ang Mga Imahe ay Nakalista Oboe maaari mong madaling makilala
1. Ang master ay naglalabas ng signal ng orasan:
2. Inililipat ng master ang SS / CS pin sa isang mababang boltahe na estado, na nagpapagana sa alipin:
3. Ang master ay nagpapadala ng data nang paisa-isa sa alipin kasama ang linya ng MOSI. Binabasa ng alipin ang mga piraso sa pagtanggap sa kanila:
4. Kung kinakailangan ng isang tugon, ang alipin ay nagbabalik ng data nang paisa-isa sa master kasama ang linya ng MISO. Binabasa ng master ang mga piraso habang natanggap sila:
Hakbang 13: Mga kalamangan at kawalan ng kalamangan ng SPI
Mayroong ilang mga pakinabang at kawalan sa paggamit ng SPI, at kung bibigyan ng pagpipilian sa pagitan ng iba't ibang mga protocol sa komunikasyon, dapat mong malaman kung kailan gagamitin ang SPI alinsunod sa mga kinakailangan ng iyong proyekto:
MGA KAGAMITAN
Walang pagsisimula at paghinto ng mga piraso, kaya't ang data ay maaaring mai-stream ng tuluy-tuloy nang walang pagkagambala Walang kumplikadong sistema ng pag-address ng alipin tulad ng I2C Mas mataas na rate ng paglipat ng data kaysa sa I2C (halos dalawang beses nang mas mabilis) Paghiwalayin ang mga linya ng MISO at MOSI, kaya maaaring maipadala at matanggap ang data sa parehong oras
KAPANGYARIHAN
Gumagamit ng apat na wires (Gumagamit ang I2C at UART ng dalawa) Walang pagkilala na ang data ay matagumpay na natanggap (mayroon itong I2C) Walang porma ng error sa pag-check tulad ng parity bit sa UART Pinapayagan lamang para sa isang solong master Inaasahan na ang artikulong ito ay nagbigay sa iyo ng isang mas mahusay na pag-unawa ng SPI. Magpatuloy sa bahaging dalawa sa seryeng ito upang malaman ang tungkol sa komunikasyon na hinihimok ng UART, o sa bahagi ng tatlong kung saan tinatalakay namin ang I2C na protocol.
Kung mayroon kang anumang mga katanungan, huwag mag-atubiling itanong ito sa seksyon ng komento, narito kami upang tumulong. At tiyaking susundan
Regards: M. Junaid
Inirerekumendang:
Wireless na Komunikasyon Gamit ang NRF24L01 Transceiver Module para sa Mga Proyekto na Nakabatay sa Arduino: 5 Mga Hakbang (na may Mga Larawan)
Wireless na Komunikasyon Gamit ang NRF24L01 Transceiver Module para sa Mga Proyekto na Nakabatay sa Arduino: Ito ang aking pangalawang itinuturo na tutorial tungkol sa mga robot at micro-Controller. Tunay na kamangha-manghang makita ang iyong robot na buhay at gumagana tulad ng inaasahan at maniwala ka sa akin magiging mas masaya kung kontrolin mo ang iyong robot o iba pang mga bagay nang wireless nang mabilis at
Ang Tubig Ay Ang Batayan para sa Buhay ng Tao: 4 Hakbang
Ang Tubig Ay Ang Batayan para sa Buhay ng Tao: Panimula: Paggamit ng Arduino upang makagawa ng isang proyekto na naglalaman ng isang pagpapaandar. Lumilikha ako ng isang proyekto ng Arduino na nagpapaalala sa iyo na uminom ng tubig para sa isang tiyak na oras. Pagganyak: Sa panahong ito, karamihan sa mga tao ay ginugugol ang karamihan sa kanilang oras na nakatuon sa trabaho at madalas sila para sa
Pag-unawa sa IR Protocol ng Mga Remote ng Air Conditoner: 9 Mga Hakbang (na may Mga Larawan)
Pag-unawa sa IR Protocol ng Mga Remote ng Air Conditoner: Natututo ako tungkol sa mga IR protocol nang medyo matagal na ngayon. Paano magpadala at makatanggap ng mga signal ng IR. Sa puntong ito, ang natitirang bagay lamang ay ang IR protocol ng AC remotes. Hindi tulad ng tradisyunal na remote ng halos lahat ng mga electronics device (sabihin ng isang TV) kung saan
Batayan ng FastLED: 8 Mga Hakbang
Batayan ng FastLED: Makikita ng Mga Instruction na ito kung paano namin masusulat ang programa ng FastLED, pati na rin kung paano gamitin ang FastLed library. Makikita rin namin kung paano kami makakapag-code upang magdisenyo ng aming sariling mga pattern ng kulay. Sinusuportahan ng Library na ito ang iba't ibang uri ng LED strip na kasama ng
BATAYAN NG KOMUNIKASYON SA UART: 16 Mga Hakbang
BATAYAN NG KOMUNIKASYON SA UART: Naaalala kapag ang mga printer, daga, at modem ay may makapal na mga kable sa mga malalaking clunky konektor na iyon? Ang mga literal na kailangang mai-screwed sa iyong computer? Ang mga aparato ay malamang na gumagamit ng UART upang makipag-usap sa iyong computer. Habang ang USB ay mayroong almos