BlueNinja BSP  0.5
Cerevo BlueNinja(CDP-TZ01B) Board Support Packageリファレンスマニュアル
BlueNinja機能仕様

モジュール

TZ1001の仕様以外のBlueNinja固有の機能について記載します。

  • 電源管理
  • シリアルコンソール
  • センサー
  • LiPoバッテリー充電IC

電源管理

バッテリー駆動を想定しモジュールの電源をソフトウェアからコントロールする仕様になっています。

電源レギュレータのイネーブル制御

低電圧検出時などのイベントにてソフトウェアからの電源OFFを実現するために電源レギュレータのイネーブル/ディスエーブルを制御できるようになっています。

電源レギュレータのイネーブルに電源スイッチとTZ1001のGPIO3が並列で接続されています。
電源レギュレータをイネーブルにするにはGPIO3をHIにします。
ソフトウェアが動作しておらず、GPIO3がLOの状態で電源ボタンを離すと電源ON状態を維持せずに電源OFFになります。

電源ONの状態を保持するためにSystemライブラリを使用してください。ライブラリの初期化処理にて電源レギュレータをイネーブルにします。

電源スイッチの監視

電源スイッチの押下をGPIO1で読み取ることができます。

電源ボタン長押しで電源OFFにするといった用途に使用できます。

Systemライブラリで電源ボタンの監視を行っており、約2秒間の電源長押しで電源OFFにします。

低電圧検出

電源電圧低下時にGPIO4がLOになります。 主にバッテリー電圧の低下検出に使用します。

Systemライブラリで電源電圧低下の監視を行っており、検出した場合には電源OFFにします。

シリアルコンソール

Consoleライブラリでシリアルコンソールを提供します。

TZ01_system_conf.hにてコンソールの使用の有無、ボーレートの変更、使用するUARTの選択ができます。

デフォルトではボーレートは9600bps、UART1を使用します。

センサー

モジュール上には9軸モーション(加速度、角速度、地磁気)センサーが実装されています。

9軸モーションセンサー

SPI3にIvensensのMPU-9250が接続されています。

Motion Trackerライブラリで測定値を取得できます。

気圧センサー

I2C1にBOSHのBMP280が接続されています。

Airpressureライブラリで測定値を取得できます。

LiPoバッテリー充電IC

I2C2にTiのBQ24250が接続されています。

デフォルト充電電流設定(ISET端子)は49mAに設定されています。
設定変更により充電電圧、充電電流の変更が可能ですが、LiPoバッテリーの破損(燃焼/爆発)の危険性があるためBattery Chargerライブラリ からはサーミスタの有効/無効の切り替えしかできないようになっています。

(設定を変更しISET端子を参照しない設定をした場合、充電電流は500mA~2Aの範囲でしか調整できません。容量の小さなバッテリーに大電流を流すこととなり危険です。)

ブレイクアウトボード

ブレイクアウトボードにmbed相当のインターフェースを搭載しています。
mbedインターフェースのドライバをインストールすることにより以下の機能が提供されます。

  • ファイルのコピーによるプログラムの書き込み
  • USB-シリアル変換
  • CMSIS-DAPインターフェース

ファイルのコピーによる書き込み

USB接続のディスクとして認識します。

コンパイル済みのbinファイルをディスクのルートディレクトリにコピーするとTZ1001のFlashに書き込みを行います。
この機能での書き込み時にはブレイクアウトボードのインターフェース側で電源レギュレータのイネーブルをホールドしますので電源ボタンの押下は必要ありません。

※binファイルをコピーしても書き込みが行われない場合は、一旦USBケーブルを外し再度挿しなおしてください。

USB-シリアル変換

USB-シリアル変換器として認識します。

インターフェースとBlueNinjaモジュールのUART1が接続されています。
PCとモジュール間の通信に使用できます。

CMSIS-DAPインターフェース

OpenOCDやKeil uVisionのデバッガなどから使用可能なCMSIS-DAPインターフェースとして認識します。

書き込み機能とは異なり電源レギュレータのイネーブルを操作しませんのでFlash書き込みやデバッグ開始時は電源ボタンの押下が必要です。