SPI (STM32F3Discovery)

(2014.9.7 作成)

(2015.11.25 更新)

 Arduino版については本家のSPI.hを呼び出しているだけのラッパークラスです。なので本家の制約がそのまま適用されます。

 UNOの場合ピン10がSSピン(Sleve Select Pin)に設定されていますが、本サイトのライブラリはピン10には関与しません。

ピン割り当て

 ArduinoでSPIを使用する場合のピン割り当ては以下のようになっています。

  UNO Rev.3  
SCK  13  
MISO 12  
MOSI ~11  
(SS) ~10 ライブラリは関知しません

関数リファレンス

コンストラクタ

プロトタイプ

SPI();

戻り値

なし

引数

なし

備考

 

クロックの変更

プロトタイプ

void setClockDivider(const uint16_t &Divider);

戻り値

なし

引数

Divider

SPI_CLOCK_DIV2

SPI_CLOCK_DIV4

SPI_CLOCK_DIV8

SPI_CLOCK_DIV16

SPI_CLOCK_DIV32

SPI_CLOCK_DIV64

SPI_CLOCK_DIV128

 のどれか

備考

 システムクロックを変更していなければ16MHz基準です。

 ライブラリはこちらからダウンロードしていただけます。またサンプルコードはこちらからご覧ください。

クロック設定

 setClock関数にて設定される周波数は以下の通りになります。

SPI_Speed_100kHz 128 kHz 
SPI_Speed_500kHz 512 kHz
SPI_Speed_1MHz 1 MHz
SPI_Speed_5MHz 4 MHz
SPI_Speed_10MHz 8 MHz
SPI_Speed_20MHz 8 MHz