You are viewing an older revision! See the latest version
mbed HRM1017をはじめよう
概要¶
mbed HRM1017のピン配置は次の通りです。

本体正面には、タクトスイッチが一つ付いています。これはHRM1017(nRF51822)のリセット用ですが、今のところ機能しません。今後、mbedインターフェースのファームウェアのアップデートで対応予定です。
基板上面のソルダジャンパ2つは、BLEモジュールのTX,RXとmbedインターフェースを接続しています。HRM1017と外部のデバイスをUARTで接続したいときには、このソルダジャンパのハンダを除いてください。
基板底面のソルダジャンパは、USB - レギュレータ - インターフェースチップの3V3と、BLEモジュール - ピンヘッダ の3V3をショートしてます。モジュール単体でバッテリ駆動したいときに、モジュールだけにピンヘッダから給電するときには、この底面のソルダジャンパのハンダを除いてください。
とりあえず¶
とりあえず、何かを動かしてみたい方は、PlatformsのnRF51822をご自分のオンラインコンパイラに追加した上で、こちらのプログラムをインポートし、コンパイルしてみてください。
Import programBLE_Health_Thermometer_IRC
Originally from Donal's blog article. http://mbed.org/users/donalm/code/BLE_Health_Thermometer_Blog/ Changed low freq. clock source from XTAL to IRC.
コンパイルすると、hexファイルがダウンロードされます。
nRF51822はBLEのスタックの部分がSoftDeviceということでプログラム可能になっています。自分のプログラムとSoftDeviceの両方を転送するために、hexファイルとなっています。
ボードをUSBでPCに接続すると、MBEDというドライブがマウントされるはずです。ここにhexファイルをドラッグアンドドロップすることで、mbedにプログラムを転送することができます。
Nordicが提供している、nRF Toolboxというプログラムをお手持ちのiPhoneにインストールして起動し、HTMというアイコンをタップ、CONNECTというボタンをタップすることで、HRM1017が電波を吹いていれば一覧にデバイスが現れると思います。温度も表示させたい人は、こんな感じでI2Cの温度センサを接続すると良いでしょう。

Low Frequency Clock¶
このプログラムは、Bluetooth LE Example on mbed - Health Thermometer!の記事のプログラムをちょっと改造したものです。Nordicのmkitには32kHzのクリスタルが載っているのですが、このボードには搭載されていません。このため、nRF51822内蔵の発振回路を使うように設定してください。具体的には、コードの画像の部分を次の様に書き換えています。
// SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_XTAL_20_PPM, false); SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_RC_250_PPM_4000MS_CALIBRATION, false);

現在のところ、BLEのライブラリは二種類存在します。
古いものと、
Import libraryBLE_API_Native_blog
BLE API as used in the blog entry.
ライブラリが二つに分離した新しいものです。
Import libraryBLE_API
High level Bluetooth Low Energy API and radio abstraction layer
Import librarynRF51822
Nordic stack and drivers for the mbed BLE API


