SPIバス (Controller) の読み書きを行います。
| 定数 | 意味 |
|---|---|
const uint8_tSPI_CONF::MSBFIRST |
MSB を先頭ビットにする |
const uint8_tSPI_CONF::LSBFIRST |
LSB を先頭ビットにする |
const uint8_tSPI_CONF::SPI_MODE0 |
SPI MODE 0 に設定する |
const uint8_tSPI_CONF::SPI_MODE1 |
SPI MODE 1 に設定する |
const uint8_tSPI_CONF::SPI_MODE2 |
SPI MODE 2 に設定する |
const uint8_tSPI_CONF::SPI_MODE3 |
SPI MODE 3 に設定する |
SPIバスの利用手続きは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を偶数で割った値になります。bitOrderはSPI_CONF::MSBFIRSTかSPI_CONF::LSBFIRSTを指定します。dataModeはSPI_CONF::SPIMODE0..3を指定します。 |
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));
...
}SPIのハードウェアの利用を終了します。
読み書きの手続きは、以下の2種類あります。いずれかを選択して利用します。
beginTransaction(), endTransaction(), transfer(), transfer16(), transfer32()transceiver