mbedのBlueUsbで接続デバイスのMACアドレスを指定する方法.
TestShell.cppのConnectDevices()を以下のように書き換える.
void ConnectDevices()
{
BTDevice* devs[8];
int count = gHCI->GetDevices(devs,8);
for (int i = 0; i < count; i++)
{
printfBytes("DEVICE CLASS",devs[i]->_info.dev_class,3);
if (devs[i]->_handle == 0)
{
BD_ADDR* bd = &devs[i]->_info.bdaddr;
if(bd->addr[5]== 0x## && bd->addr[4]== 0x## && bd->addr[3]== 0x## && bd->addr[2]== 0x## && bd->addr[1]== 0x## && bd->addr[0]== 0x##);
else continue;
printf("Connecting to ");
printf(bd);
printf("\n");
gHCI->CreateConnection(bd);
}
}
}
太字部分を追加.
bd->addr[5]を先頭アドレスとして##に接続したいデバイスのMACアドレスを入力する.
これでbluetoothが飛び交う環境でも目的のデバイスに接続できるようになる.
0 件のコメント:
コメントを投稿