SPI.transfer()

Last revision:2026/01/24

名称

SPI.transfer()

説明

transfer()は、SPIバスを通じて、送受信を同時に行う。これはSPIが、データの総j心を同時に実行するフルデュープレックスのためである。

1バイトの転送では、受信したバイトが返される。transfer16を用いた2バイトの転送では、受信した2バイトが返される。バッファ転送では、受信したデータは、バッファ内の元の内容を置き換える(インプレース転送)。

この関数はSPIライブラリの一部である。詳細は、SPIを参照すること。

書式

  • receivedVal = SPI.transfer(val)
  • receivedVal16 = SPI.transfer16(val16)
  • SPI.transfer(buffer, size)

C言語シグネチャ(avr)

uint8_t SPIClass::transfer(uint8_t data);

uint16_t SPIClass::transfer16(uint16_t data);

void SPIClass::transfer(void *buf, size_t count);

引数

val
SPIバスに送信する1バイトの値。データ型: `byte`。
val16SPIバスに送信する2バイトの値。データ型: uint16_t
bufferSPIバスに送信するデータの配列。データ型: byteの配列。
size送信するバッファのバイト数。データ型: size_t

戻り値

  • SPI.transfer(val): 受信した1バイト。データ型: byte
  • SPI.transfer16(val16): 受信した2バイト。データ型: uint16_t
  • SPI.transfer(buffer, size): 戻り値なし。受信したデータはbufferに格納される。

オリジナルのページ

https://docs.arduino.cc/language-reference/en/functions/communication/SPI/transfer/

最終更新日

July 12, 2026

inserted by FC2 system