Bluetooth RN-42


Bluetooth RN-42の実験をしてみました。
使用したモジュールは「Bluetooth モジュール RN-42XVP-I/RM」です。

回路図のようにMaster、Slaveを作り、MasterからSlaveに無線で送った文字がSlaveで表示され、 また、逆にSlaveからMasterに無線で送った文字がMasterで表示されるように設定します



設定1 (設定2をおすすめします)

@ Slaveの設定

Slave側のみ電源オンします。

画面1を実行する。
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][F][,][1][Enter]......工場出荷時の設定に戻す
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][T][,][2][5][5][Enter]......モード移行制限の解除する
(応答)AOK
(入力)[S][A][,][0][Enter]......認証不可能にする
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot

set_slave.jpg

画面1 (青文字:送信文字、赤文字:受信文字)



AMasterの設定

Master側、Slave側の電源オンします。

画面2の左 (Master側) を実行する。
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][F][,][1][Enter]......工場出荷時の設定に戻す
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][T][,][2][5][5][Enter]......モード移行制限の解除する
(応答)AOK
(入力)[S][A][,][0][Enter]......認証不可能にする
(応答)AOK
(入力)[S][M][,][1][Enter]......Masterにする
(応答)AOK
(入力)[S][$][,][#][Enter]......$$$ を ### に変更する
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[I][Enter]......ディバイスの検索をする
(応答)Inquiry,T=7,COD=0
(応答)Found 1
(応答)000666726A9C,RNBT-6A9C,1F00
(応答)Inquiry Done
(入力)[S][R][,][I][Enter]......検索したディバイスのアドレスを保持する
(応答)AOK
(入力)[C][Enter]......保持しているアドレスへ接続する
(応答)TRYING
(入力)[a][b][c][d][e][f][g][Enter]......緑色のLEDが点灯してから入力しSlaveへ送る
(受信)1234567890......Slave側で(入力)[1][2][3][4][5][6][7][8][9][0][Enter]をする

set master.jpg

画面2 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)



B再接続

Master側、Slave側の電源をオフし、オンした場合
Master側をコマンドモードにし、C コマンドを送るとつながります。

画面3左 (Master側) を実行する。
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[C][Enter]......保持しているアドレスへ接続する
(応答)TRYING
(入力)[a][b][c][d][e][f][g][Enter]......緑色のLEDが点灯してから入力しSlaveへ送る
(受信)1234567890......Slave側で(入力)[1][2][3][4][5][6][7][8][9][0][Enter]をする

re_start.jpg

画面3 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)




設定2 (おすすめします)

@Slaveの設定

Slave側のみ電源オンします。

画面4を実行する。
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][F][,][1][Enter]......工場出荷時の設定に戻す
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][T][,][2][5][5][Enter]......モード移行制限の解除する
(応答)AOK
(入力)[S][A][,][0][Enter]......認証不可能にする
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot

set_slave.jpg

画面4 (青文字:送信文字、赤文字:受信文字)



AMasterの設定

Master側、Slave側の電源をオンします。

画面5の左 (Master側) を実行する。
(入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][F][,][1][Enter]......工場出荷時の設定に戻す
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
入力)[$][$][$]......コマンドモードへ切り換える
(応答)CMD
(入力)[S][T][,][2][5][5][Enter]......モード移行制限の解除する
(応答)AOK
(入力)[S][A][,][0][Enter]......認証不可能にする
(応答)AOK
(入力)[S][M][,][3][Enter]......auto-Masterにする
(応答)AOK
(入力)[S][$][,][#][Enter]......$$$ を ### に変更する
(応答)AOK
(入力)[R][,][1][Enter]......再起動する
(応答)Reboot
(入力)[a][b][c][d][e][f][g][Enter]......緑色のLEDが点灯してから入力しSlaveへ送る
(受信)1234567890......Slave側で(入力)[1][2][3][4][5][6][7][8][9][0][Enter]をする

set_master_auto.jpg

画面5 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)



B再設定

Master側、Slave側の電源をオフし、オンした場合 (Master側はSlave側より遅れてオンしても良い)
即つながる。

画面6の左 (Master側) を実行する。
(入力)[a][b][c][d][e][f][g][Enter]......緑色のLEDが点灯してから入力しSlaveへ送る
(受信)1234567890......Slave側で(入力)[1][2][3][4][5][6][7][8][9][0][Enter]をする

re_start_auto.jpg

画面6 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)




リモートコマンド (ローカルコマンドと同じ) の使用例

Master、Slaveが接続されている。(Master、Slaveが緑色LEDを点灯している) 状態から始める。

画面7の左 (Master側) を実行する。
(入力)[$][$][$]......リモートコマンドモードへ切り換える (ローカルは[#][#][#]です)
(応答)CMD
(入力)[S][*][,][0][2][0][2][Enter]......リモート(Slave)のGPIO9をhighにする
(応答)AOK
(入力)[S][*][,][0][2][0][0][Enter]......リモート(Slave)のGPIO9をhighにする
(応答)AOK
(入力)[G][&][Enter]......リモート(Slave)のGPIO7〜GPIO0を読む
(応答)84
(入力)[A][Enter]......リモート(Slave)のADC1を読む
(応答)ADC1=6, 6mV
(入力)[-][-][-][Enter]......データモードへ切り換える
(応答)END

画面7の右 (Slave側) を実行する。
(入力)[#][#][#]......リモートコマンドモードへ切り換える (ローカルは[$][$][$]です)
(応答)CMD
あとはMasterと同じでリモート(Master)をコントロールできます

remote_command.jpg

画面7 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)



remote_command2.jpg

画面8 左:Master側、右:Slave側 (青文字:送信文字、赤文字:受信文字)





Bluetooth モジュール RN-42XVP-I/RMのピン番号と内容
ピン番号信号名内容備考
1VDD_3.3V3.3V電源
2TXDシリアル送信
3RXDシリアル受信
4GPIO10ディジタル出力
5RESET_Nリセット
6GPIO6ディジタル入出力入出力は SW3 (Auto-Connect) で使用
7GPIO9ディジタル出力
8GPIO4ディジタル入出力入出力は SW1 (Factory Reset) で使用
9GPIO11ディジタル出力
10GNDGND
11GPIO8ディジタル出力
12RTSRTS (シリアル通信制御)
13GPIO2ディジタル入出力
14未使用

15GPIO5ディジタル入出力出力は LED で使用
16CTSCTS (シリアル通信制御)
17GPIO3ディジタル入出力入出力は SW2 (Auto Discovery/Pairing) で使用
18GPIO7ディジタル入出力入出力は SW4 (Baudrate) で使用
19ADC1アナログ入力
20



RN-42_kairo.gif

回路図


真空管
戻る