次のコンポーネントを使用して単純な Bluetooth デバイスを作成しました
- HC05 モジュール
- Arduino Uno ボード (再プログラム可能なマイクロコントローラー付き)
これらのコマンドが Bluetooth ヘッドセットから送信されたかのように、BT デバイスからコマンドを送信できるかどうか疑問に思っています。
つまり、次のとおりです。
- 0x00000055 キーコードを送信 - 音楽が一時停止します (KEYCODE_MEDIA_PLAY_PAUSE)
- 0x00000058 を送信 - 前の曲が再生を開始します (KEYCODE_MEDIA_PREVIOUS)
- ...
Android が使用するキーコードの完全なリストは次のとおりです: http://developer.android.com/reference/android/view/KeyEvent.html
おそらく、着信コマンドを読み取り、ヘッドセット ボタンの押下をシミュレートする別のアプリを作成できますが、それは私が望むものではありません。私に関する限り、一部のヘッドセットはプラグアンドプレイです。つまり、Android デバイスに追加のアプリをインストールする必要はありません。Androidフォンにコマンドを送信するために現在使用しているコードは次のとおりです。
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(10, 11); // RX | TX
enum { LED_PIN = 6 };
enum LedState { LED_ON, LED_OFF, LED_BLINK };
LedState led_state;
void setup()
{
led_state = LED_OFF;
pinMode(LED_PIN, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(9, LOW);
Serial.begin(9600);
Serial.println("Enter AT commands:");
BTSerial.begin(38400); // HC-05 default speed in AT command more
}
const int COMMAND_MUSIC = 85;
void loop()
{
digitalWrite(LED_PIN, HIGH);
delay(100);
digitalWrite(LED_PIN, LOW);
delay(100);
delay(10000);
// trying to play or pause once in 10 seconds
BTSerial.write(0x00000055);
//BTSerial.print(0x00000055, HEX);
}
両方のデバイスがペアリングされていますが、携帯電話の音楽プレーヤーはこれらのコマンドの影響を受けません。「BT からの受信コマンド」用のサイド アプリを作成せずに音楽プレーヤーを制御することはできますか?