A21. Arduino sarjaliikenne, SPI väylä ja i2C väylä - matpi/EmbeddedSystemsUTU GitHub Wiki

Sarjaliikenne

Käyettäessä sarjaliikenneyhteyttä esimerkiksi tietokoneen ja Arduinon välillä, molempien laitteiden kellopulssien pitää olla samalla taajuudella. Sarjaliikenneväylän avulla voidaan yhdistää toisiinsa ainoastaan kaksi laitetta samanaikaisesti.

Sarjaliikenne

SPI-väylä

SPI-väylän avulla voidaan liittää yhteen "master" laitteeseen useita "slave" laitteita. Yhden master laitteen ja slave laitteen liittäminen toisiinsa vaatii neljä linjaa laitteiden väliseen kommunikointiin. Jokainen järjestelmään liitetty uusi slave laite vaatii oman i/o pinnin master laitteesta. Mikäli arduinoon haluttaisiin liittää useita lisälaitteita tai sensoreita, jotka käyttävät SPI-linjaa, tulee johdinjärjestelyistä helposti hyvin monimutkaisia.

SPI väylän rakenne

i2C = Inter-Integrated Circuit (pronounced I squared C)

I2C on dataprotokolla, jota voidaan hyödyntää erilaisten sulautettujen järjestelmien osien välisessä kommunikoinnissa. Se mahdollistaa useiden "slave" laitteiden tai piirien kommunikaation yhden tai useamman "master" piirin tai mikrokontrollerin kanssa. i2C bus tai i2C väylä tarvitsee ainoastaan kaksi signaalijohdinta kommunikointiin:

i2C

Kussakin i2C väylässä tarvitaan SCL eli kellopulssisignaali ja SDA eli datasidnaali. Signaalijohtimissa tarvitaan ns. ylösvetovastus. Joissakin Arduino yhteensopisvissa i2c laitteissa nämä ylösvetovastukset on sisäänrakennettu boardiin tai mooduuliin (esim. LCD näytöt).

12C rakenne ja ylösvetovastukset

i2c moduulilla varsutetut LCD-näytöt kytketään Arduinoon seuraavalla tavalla (huom! ylösvetovastukset on asennettu valmiiksi koulun LCD-näyttö moduuleissa)

LCDi2c

Tämän sivun tekemiseen liittyvä lähde: https://learn.sparkfun.com/tutorials/i2c