BLE nanoでスイッチサイエンスから発売されている9軸慣性計測ユニット使いたいと思い、簡単に9軸慣性計測ユニットを使えるライブラリをインポートしたらエラーがでた。
エラー原因を探るとSPIの通信ができないとのエラー。
「SPI.hはインクルードできているのになぜ?」と思い、色々調べたらわかったので記述します。
結論から言うと、BLEnano問わず、nRF51822はSPI.hではなく、SPI_Master.hをインクルードするということでした。
SPI.hと少し仕様が異なるため注意
サンプルプログラム
#include <SPI_Master.h> void setup() { // put your setup code here, to run once: SPI_Master.begin(); SPI_Master.setFrequency(SPI_500K); SPI_Master.setBitORDER(MSBFIRST); SPI_Master.setSPIMode(SPI_MODE0); } void loop() { // put your main code here, to run repeatedly: SPI_Master.transfer(0x00); }
9軸慣性計測ユニットのライブラリを書き換えて無事に値を取得することができました。
コメント