マイコンの通信機能 UARTとI2C 、SPIの違い:Q&Aで学ぶマイコン講座(115)(3/3 ページ)
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「UART、I2C、SPIの違い」についてです。
性能の違い
(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.
関連記事
C言語コード生成ツールが普及する理由
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「C言語コード生成ツールが普及する理由」についてです。
I3Cって何? 特長と使い方を基礎から解説
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「MIPI I3C」についてです。
マイコンの割り込み優先度、変更する理由とその仕組み
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「割り込み優先度」についてです。
マイコンの外部クロックと内部クロックの違い 種類や役割を一気に解説
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「外部クロックと内部クロック」についてです。
マイコンのクロックセキュリティシステムって何?
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「クロックセキュリティシステム」についてです。
低速読み出しフラッシュメモリでも、CPUが高速動作できる工夫とは?
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「低速読み出しフラッシュメモリでも、CPUが高速動作できる工夫とは?」についてです。