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.
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.
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:
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).
i2c moduulilla varsutetut LCD-näytöt kytketään Arduinoon seuraavalla tavalla (huom! ylösvetovastukset on asennettu valmiiksi koulun LCD-näyttö moduuleissa)
Tämän sivun tekemiseen liittyvä lähde: https://learn.sparkfun.com/tutorials/i2c