TakasakiPhysicsClub-RoboCup-Documentation

著者:根岸孝次

この資料では、Arduinoでよく使われる3つの通信方法(UART、I2C、SPI)について学びます。これを読めば、電子工作でマイコン同士の通信やセンサーとのやり取りを自分で実装できるようになります。

通信の概要

何に使うのか?

通信は、複数のマイコン同士やセンサー、PCとArduinoの間で情報をやり取りするための手段です。通信は、以下のような用途に活用されます:

通信方式 使用例 メリット デメリット
UART(シリアル通信) PCとのデバッグ
ArduinoのSerial
配線がTxとRxの2本で済む
プログラムが単純
1:1の通信であるため複数デバイスと相性が悪い
I2C センサ(6軸センサ、温度センサなど) 複数デバイスを少ない信号線で管理できる 通信速度が遅い
SPI SDカード 高速かつ多くのデバイスが接続可能 2本の通信線(SCK, MISO, MOSI)に加えデバイス選択用の信号がデバイス数分必要になる

各通信の回路

UART通信の回路

I2C通信の回路

SPI通信の回路

各通信をArduinoで利用する際のプログラムの書き方

各通信で必要となる最低限の関数の使い方などを解説します。

UART

I2C

SPI