Bluetoothの接続まで準備できたので、次にプログラムを準備します。
 BuletoothとWiiリモコンの通信の確認だけであれば、mbedサイトのCookbookにあるBuleUSBがそのまま使用できるので、それをコンパイルしてmbedに書き込めば大丈夫です。

1 BuleUSBを自分のプログラム環境に取り込む
 
 
12.jpg
Cookbookのページ BuleUSBをクリック

 
 13.jpg
BuleUSBのページ BlueUSBのリンクをクリック

 
 
 14.jpg
Import into Compilerをクリック

 
 15.jpg
ログインしていれば、コンパイラの画面になる。
最後にImportボタンをクリック

2 コンパイルして、Binファイルをmbedに入れる

16.jpg 
Importすると画面左のプロジェクト欄にBlueUSBが追加されるので、それを選んでCompileボタンをクリックすると、BlueUSB_LPC1768.binがダウンロードされるのでそれをmbedに入れる


 それでは通信の確認をしてみましょう。
 USBにBluetoothドングルを差し込んで、mbedをパソコンに接続します。
 通信の状況はシリアルのメッセージでmbedから出力されるので、mbedのシリアル出力をパソコンで見られるようにします。Windowsであればmbedサイトにドライバがあるので、それをインストールします。
 ハイパーターミナルやTeraTermなどのシリアル・ターミナルのソフトで、mbedのシリアル・ポートとして認識しているポートを選択し、ボーレートは460800bpsに設定します。あと改行コードが「LF」のみなので、見やすくするためにシリアル・ターミナル・ソフトの設定も合わせます。

 17.jpg
フリーのターミナル・ソフト TeraTermの通信設定と端末の設定


 18.jpg  Bluetoothドングルが正常に認識されると、次のようなメッセージが表示されます。

Bluetooth inserted of 1
Inquiry..
Status Unknown Cmd OK
CALLBACK_READY
HIDBluetooth 20
Inquiry..
Status HCI_OP_INQUIRY OK
CALLBACK_INQUIRY_RESULT A4:5C:27:25:4F:E8
Inquiry Complete 1: 01
CALLBACK_INQUIRY_DONE
DEVICE CLASS 3: 04 25 00
Connecting to A4:5C:27:25:4F:E8
Status HCI_OP_CREATE_CONN OK
Connected on 002A
ConnectionComplete A4:5C:27:25:4F:E8100003c8 10000300

 そして、Wiiリモコンの(1)ボタンと(2)ボタンを同時に押し、しばらくするとWiiリモコンのLEDが一つだけ点灯した状態になります。


19.jpg
 その状態でシリアル出力を見ると、メッセージが次々と表示されます。
 これがWiiリモコンから取得したボタンと加速度センサの情報になります。それぞれボタンを押すと値が変化するのがわかります。

================wii====================
0000 A1 30 00 00                                     .0..
\rOnHidControl
0000 00                                              .
\rOnHidControl
WII 0000 493 494 590
WII 0000 491 494 590
WII 0000 491 494 590
WII 0000 492 494 590
WII 0000 491 492 590


 ここまでできれば、Wiiリモコンで何かを動かすという目標にグンッと近づいたと思います。
 プログラム上でこのメッセージを出力しているところを探し、そこで値の変化で動作するようにすればWiiリモコンで操作できる何かを作ることができます。

勝純一




| | トラックバック(0)

トラックバック(0)

このブログ記事を参照しているブログ一覧: 壁を這うロボット <3>

このブログ記事に対するトラックバックURL: http://www.eleki-jack.com/mt/mt-tb.cgi/5203





カテゴリ


Copyright (C) 2006-2015 CQ Publishing Co.,Ltd. All Rights Reserved.