組込み技術におけるシリアル通信の使い分けと特徴
組込み技術において、CPUと他デバイスとの通信方法として
一般的にシリアル通信は、
・SPI通信
・I2C通信
・UART通信
があると言われています。
プン子は、ここの理解が乏しいので勉強したいのですが、
なかなか理解できませんorz
やっぱり理解したいことは、どういうときにどの通信方法を
使うのがベストなのか?を判断することです。
使い分けができなかったら、実践では活かせないので・・
とはいえ、それぞれの特徴の理解も必要で、
そこから導かれる理解もあると思うので、
今回は各通信の特徴をまとめてみたいと思います!
■SPI通信
・通信速度が最速
・信号線が4本必要(CSは各デバイス専用線が必要)で、方向は一方向
・4本の内訳は、CS(ChipSelect)、CLK、
MISO(MasterIn/SlaveOut)、MOSI(MasterOut/SlaveIn)
・近距離伝送向き
■I2C通信
・通信速度はSPI通信より遅い
・信号線は2本のみ。方向は双方向。
・2本の内訳は、SCL(SerialCLK)、SDA(SerialData)で、
SDAでデバイスのアドレス指定をする(SPIとは違い、専用線が不要)
・また、受信ごとにACK信号(アドレス合ってますよの意)を
返してくれる
・近距離伝送向き
■UART通信
・通信速度は遅い。
・通信線は1~2本で、半二重通信と全二重通信の
2種の通信方法がある
・クロック信号を必要としない
・どういう使い方かイマイチ分からないので、もうちょっと勉強が必要
■参考URL
一基板内などの近距離伝送においては、
速度が必要であればSPI、必要でなければI2Cを使えばよいと
いうことでしょうか。
実際の設計書など見て、勉強したいですね。
それでは!