5

Arduino Mini ProRN-42 HID Bluetoothモジュールで「キーボード」を作ろうとしています。MacBookに接続すると、Bluetooth キーボードとして表示されます。また、ボタンを押すとコマンドが送信されます。

完璧ですよね?

残念ながらそうではありません...キーを押して離したことをモジュールに伝えるためにモジュールに送信する必要があるバイトをコーディングする方法がわかりません。入手できる Bluetooth RN-42 のマニュアルをすべて読んでいますが、Bluetooth モジュールに何を送信すればよいか完全には理解していません。過去数週間も Google 検索を使用して検索してきましたが、役立つ C コードが見つかりません。私が知る限り、USB キープレスは 16 進数の配列として送信されます。これは正しいですか?もしそうなら、それをどのようにコーディングしますか?

4

4 に答える 4

6

RN42 およびキーボードとマウス用の HID プロトコルをサポートするarduino ライブラリーのシルバーボールを作成しました。BT モジュールを介して HID 未加工レポートを送信する方法を示すサンプル アプリケーションがあります。私のものは、カスタムコントローラーからゲームをプレイするために使用するように設計されました。

前に述べたように、BT モジュールを HID モードに設定する必要があります (S~,6シリアル接続からコマンドを送信するかGPIO11、モジュールの起動時にハイに設定します)。モジュールは、工場出荷時のデフォルトでキーボード HID に設定されている必要がありますが、キーボードに設定するには、コマンドSH,0200を BT モジュールに送信すると、キーボード モードに設定されます。

その後、単純に RAW レポートを BT に送信する必要があります。レポートは次のようにフォーマットされます。

RN42 HID 生レポート形式:

|start(1 byte)|length(1 byte)|descriptor(1 byte)|data(length - 1 [for the descriptor]) 

キーボードの例:

|0xFD|9|1|modifier|0x00|code 1|code 2|code 3|code 4|code 5|code 6 

キーボード修飾子ビット (1 バイトとして送信)

bit 7  |bit 6  |bit 5    |bit 4  |bit 3  |bit 2  |bit 1    |bit 0 
rt GUI |rt alt |rt shift |rt ctrl|lt GUI |lt alt |lt shift |lt ctrl

私のコードはgithubにあります - 好きなように使ってください!

于 2013-05-10T23:16:16.190 に答える
0

したがって、本当に HID-611 ファームウェアを搭載した RN-42 モジュールをお持ちの場合:

RN-42 のシリアル ポート @115200 ボーに ASCII 文字列を送信するだけで、後は自動で処理されます。

Peter の言うとおりです。HID がプリロードされた RN-42 を使えば非常に簡単です。sparkfunスタンドアロンから購入することも、ボードにはんだ付けして簡単に接続することもできます。

于 2014-06-20T22:45:25.497 に答える
-3

Arduino にキーボード プレス メッセージをコンピュータに送信させたい場合は、キーを押すにはKeyboard.press()を使用し、キーを離すにはKeyboard.release () を使用します。私はそのタイプのArduinoまたはそのBluetoothモジュールを持っていませんが、Arduinoをキーボードとして認識するので、これはうまくいくはずだと思います...

于 2013-04-27T09:37:50.760 に答える