はじめに
この記事は、
- mbed LPC1768
- RN42VX
- iPhone
を使って、RN42とiPhoneでBluetooth通信した時の備忘録です
構成
PC - LPC1768 - RN42 - iPhone
(RN42評価キットならLPC1768を介さずにPCと繋がる)
PC - LPC1768
- USBでつなぐ
- Windows PC の場合はCOM port として認識するためにドライバが必要
- PCからLPC1768にコマンドを送るためのターミナルソフト(Mac : CoolTerm/Win : Tera Term など)を用意する
- 下記コードをmbed developer siteでコンパイルしてLPC1768にダウンロードする
- このコードにより、LPC1768は、PCとRN42間のデータの送受信を仲介するようになります(ついでに送受信のたびにLEDがチカチカする)
(参照元:https://developer.mbed.org/users/simon/notebook/rn-42-hid/)
main.c
#include "mbed.h"
#define BAUDRATE 115200
Serial RN42(p9,p10);
Serial PC(USBTX, USBRX);
DigitalOut RN42_led(LED1);
DigitalOut pc_led(LED2);
char buf;
int main(void)
{
RN42.baud(BAUDRATE);
PC.baud(BAUDRATE);
while (1) {
if(PC.readable()) {
buf = PC.getc();
RN42.putc(buf);
PC.putc(buf);
pc_led = !pc_led;
}
if(RN42.readable()) {
PC.putc(RN42.getc());
RN42_led = !RN42_led;
}
}
}
LPC1768 - RN42
- http://lumenbolk.com/?p=1335 にわかりやすい図がありました
- http://samirlovgren.se/?page_id=1299 を参考にしてRN42を設定する(下記コマンドをターミナルソフトから入力する)
$$$ # コマンドモード移行 (RN42のチカチカがはやくなる)
SF,1\r # 工場出荷状態に戻す
R,1 # 設定を反映させるためREBOOT
$$$ # コマンドモード移行 (RN42のチカチカがはやくなる)
S~,6\r # プロファイル設定(6はHID(キーボードなど))
SN,name\r # デバイス名設定(nameは好きな名前)
SC,0024\r
SD,0704\r
ST,253\r
SO,%\r
T,1\r
SM,0\r # slave mode
SP,1234 # pin code設定(1234は好きな数字で可)
SA,4\r # pin code認証に設定
D\r # setting確認
O\r # other setting確認
R,1 # 設定を反映させるためREBOOT
RN42 - iPhone
- Bluetoothで通信する
- iPhoneのBluetoothをONし、RN42と接続する(設定したPinCodeを入力(未設定なら初期値の1234))
- iPhoneでメモ帳などを開き、PCのターミナルで文字を打つとiPhoneに入力できる!!!