robo8080のブログ

ロボット製作や電子工作など。

ランニングエレクトロニクスSBDBT/SBXBTのBluetooth LEシリアル通信アダプタ化実験(2)

2013年04月29日 | Bluetooth LE

ランニングエレクトロニクスの”SBDBT/SBXBT+BLEでiOSと通信するサンプルプログラム”を改造して、シリアル通信アダプタを作ってみました。

 (サンプルプログラムVer.130613以降では改造不要です。サンプルプログラムのマニュアルを参照ください。)

この実験で使用したファームの紹介をします。

【対象モジュール】

 私が動作確認したのは次の2つです。

 ・SBXBT

 ・SBDBT

【機能】

 BLEで受信したものをそのままSBDBT/SBXBTのシリアルへ送信。

 SBDBT/SBXBTのシリアルで受信したものをそのままBLEへ送信。

 シリアル通信のSERVICEは0xFFF0、CHARACTERISTICは送受信共、0xFFF1です。

 シリアル受信はiPhone/iPad側から定期的にREADする必要があります。

 シリアルコマンドサーボを動かしたりするときはiPhone/iPad側でコマンドを作ります。

【ソースプログラム】

 オリジナルの”Bluetooth Low EnergyiOSデバイスと通信するサンプルプログラム”に対して、修正する必要があるファイルは2つです。

 ・ble_server.c 

 ・global.h

(1)まず、”ソース Ver.130206” (sbxbt_ble_130206.zip) をダウンロードして、適当なディレクトリに解凍します。

(2) 次に、”ble_server.c”に次のように修正を加えます。

 
―――――――――――――――――――― 途中省略 ----------------------------------

 
 
―――――――――――――――――――― 途中省略 ----------------------------------
 

 
―――――――――――――――――――― 以下省略 ----------------------------------
 
(3)”global.h”を修正して、使用するモジュールの選択や通信パラメータの設定をします。 

(4) あとは、ビルドしてSBDBT/SBXBTに実行ファイルを書き込みます。

  ビルド方法や、書き込み方はSBDBT/SBXBTのマニュアルを参照してください。

 

【動作確認】 

 動作確認には、”Bluetooth Low Energy iOSデバイスと通信する サンプルプログラム”のマニュアルに載っている”LightBlue”を使用します。

 ここでは、SBDBTを例にします。

(1)SBDBTにUSBシリアル変換モジュールを接続します。

 

 SBDBT                   USBシリアル変換モジュール(3.3V用)

     VDD 2 ------------ 3.3V        (VDDのピン番号間違い訂正 2013.05.05)

     GND 3 ------------ GND        (GNDのピン番号間違い訂正 2013.05.05)

     TX   7 ------------ RX

     RX   8 ------------ TX

(2)USBシリアル変換モジュールをPCに接続し、”Tera Term”などのターミナルソフトで開きます。

  115200bps, 8bit, no parity, 1stop bit です。

(3)SBDBTの赤LEDが消灯しているのを確認し、”LightBlue”を起動します。

(3)”SBDBT BLE TEST”が検出されたらServices:0xFFF0、Characteristics:0xFFF1を選択します。

(4)”LightBlue”のWriteを選択し、ASCII欄に何か入力してSendすると、PCのターミナルソフトにそれが表示されます。

(5)PCのターミナルソフトで何か入力し、”LightBlue”でReadを選択するとPCで入力したものが表示されます。

 

 

―以上―


関連記事

ランニングエレクトロニクスSBDBT/SBXBTのBluetooth LEシリアル通信アダプタ化実験(1) 

関連リンク

ランニングエレクトロニクスサポートページ

 

 


最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
2,3 pinかな? (micono)
2013-05-05 07:55:25
もしかして勘違いかもしれませんが、
VCC 3 ------------ 3.3V
GND 4 ------------ GND
とありますが、これはピンの番号でしょうかね?
2,3がVcc,GNDだったかと思います。
返信する
re : 2,3 pinかな? (robo8080)
2013-05-05 09:21:31
ご指摘ありがとうございます。
間違い訂正しました。
ピン名も訂正しました。
VCC -> VDD
返信する

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。