SPIバス (MASTER) の読み書きを行います。
定数
意味
const uint8_t SPI_CONF::MSBFIRST
MSB を先頭ビットにする
const uint8_t SPI_CONF::LSBFIRST
LSB を先頭ビットにする
const uint8_t SPI_CONF::SPI_MODE0
SPI MODE 0 に設定する
const uint8_t SPI_CONF::SPI_MODE1
SPI MODE 1 に設定する
const uint8_t SPI_CONF::SPI_MODE2
SPI MODE 2 に設定する
const uint8_t SPI_CONF::SPI_MODE3
SPI MODE 3 に設定する
SPIバスの利用手続きはbegin()メソッドによります。
begin()
void begin(uint8_t slave_select, SPISettings settings) SPISettings(uint32_t clock, uint8_t bitOrder, uint8_t dataMode)
ハードウェアの初期化を行います。
スリープ復帰後にも本処理が必須です。
パラメータ
解説
slave_select
使用するSPIスレーブのセレクトピンを指定する。
0 : DIO19
1 : DIO0 (DIO 19 は予約されます)
2 : DIO1 (DIO 0,19 は予約されます)
settings
SPIのバス設定を指定します。 clock[hz]でSPIバスの周波数を指定します。指定した周波数に近いディバイザが選択されます。16Mhzまたは16Mhzを偶数で割った値になります。
clock
bitOrderはSPI_CONF::MSBFIRSTかSPI_CONF::LSBFIRSTを指定します。
bitOrder
SPI_CONF::MSBFIRST
SPI_CONF::LSBFIRST
dataModeはSPI_CONF::SPIMODE0..3を指定します。
dataMode
SPI_CONF::SPIMODE0..3
SPIのハードウェアの利用を終了します。
読み書きの手続きは、以下の2種類あります。いずれかを選択して利用します。
メンバ関数版 (以下のメンバ関数を用いた入出力) beginTransaction(), endTransaction(), transfer(), transfer16(), transfer32()
beginTransaction(), endTransaction(), transfer(), transfer16(), transfer32()
ヘルパークラス版(stream機能が使用可能) transceiver
transceiver
最終更新 6 年前
void setup() { ... SPI.begin(0, SPISettings(2000000, SPI_CONF::MSBFIRST, SPI_CONF::SPI_MODE3)); ... } void wakeip() { ... SPI.begin(0, SPISettings(2000000, SPI_CONF::MSBFIRST, SPI_CONF::SPI_MODE3)); ... }
void end()