検索
連載

マイコンの通信機能 UARTとI2C 、SPIの違いQ&Aで学ぶマイコン講座(115)(3/3 ページ)

マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「UART、I2C、SPIの違い」についてです。

Share
Tweet
LINE
Hatena
前のページへ |       

性能の違い

(1)UART

 転送速度は一般に9600〜11万5200ビット/秒(bps)程度がよく使われ、高速なもので数メガビット/秒まで対応します。配線はシンプルですが、1対1通信が基本で、複数デバイス接続には向いていません。

(2)I2C

 代表的なモードの速度は、標準で100kbps、高速で400kbpsです。最近のデバイスではそれ以上の高速モードも存在します。例えば、STM32C562xxでは「Fast-mode Plus(最大1 MHz)」 が存在します。バス容量やノイズの影響を受けやすく、短距離/同一基板内向けです。

(3)SPI

 数メガ〜十数メガビット/秒以上の高速通信が可能です。連続転送にも強いですが、配線が他の方式よりも多く、スレーブ数が増えるとSS(CS)線が増えます。

用途の違い

(1)UART

前述しましたが、printfを使用するデバッグロギング、設定用コンソール、GPSモジュールなどとの通信、Bluetoothシリアルモジュールなどとの接続などに使われます。

(2)I2C

 配線が少なくて済み、基板内でたくさんのICを制御するときに便利ですが、バス容量やノイズの影響を受けやすく、短距離/同一基板内向けです。温度/加速度/磁気センサーなど各種センサー接続や、デジタルポテンショメーター、IO拡張ICの制御、小容量EEPROMの読み書きに使われます。

(3)SPI

 高速なA-Dコンバーター、D-Aコンバーター、外付けフラッシュメモリ、SDカードインタフェース、TFT液晶ディスプレイ、D-Aコンバーター付きオーディオデバイスなどに使われます。

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る