米粒AVRでSoftModem的なこと
公開日:
電子工作 | Android, SoftModem, イヤホンジャック, 米粒AVR(tiny10)
米粒AVRとAndroidを繋いで、データのやりとりを行ってみたいと思います。
2つを繋ぐインターフェースは、イヤホンジャック経由の音声データです。
以前、ArduinoとAndroidをイヤホンジャックで繋ぐSoftModemを試したことがありますが、その時とは若干通信手段が異なります。
以前は音声データの周波数の変化でデータを識別していたのですが、米粒AVRでは単純な赤外線リモコンのプロトコル(と言うのか?)を利用します。
簡単に言うと、米粒AVRで作ったリモコン送信機とAndroidのイヤホンジャックに接続するリモコン受信機を直付けすると「米粒AVRからAndroidへデータを送る」ことができると言うことで、今回はその実験です。
回路
回路としては、リモコン送信機の回路の赤外線LEDの部分を、イヤホンジャック用に変更。
プログラムもリモコン送信機のものをそのまま使います。
ちなみに、電源は乾電池2本で3Vを想定しています。
※2013/4/10 回路修正しました。抵抗(R3)を追加しています。
Tiny10用 ソース
リモコン送信機のプログラムをそのまま使います。
Androidでデータ受信のテスト
データの受信に使うのは、 こちらのSoundIR Analyzerというリモコンデータの解析アプリ。
アプリが受信待機中になれば、作った回路のスイッチ1を押します。
これはスイッチ1を押した時のデータなので Data(HEX)に 01,00,00,01 が表示されれば正解。
スイッチ2を押した時には、データが 01,00,00,02
スイッチ3を押した時には、データが 01,00,00,03
となるはず。
リモコン送信機のページでも説明していますが、このデータは、ソースの35行目~で指定しています。
ここを変更すれば、受信するデータが変わります。
uint8_t ch_data[][DATA_BYTE_COUNT]=<br /> {<br /> {0x01,0x00,0x00,0x01}, // ch0<br /> {0x01,0x00,0x00,0x02}, // ch1<br /> {0x01,0x00,0x00,0x03}, // ch2<br /> };<br />
以上、
「米粒AVRからAndroidへデータを送る」SoftModemのようなことができることが確認できました。
これとは逆に、Androidのイヤホンジャックに接続するリモコン送信機と米粒AVRで行うリモコン受信処理をくっつけるとAndroidから米粒AVRへデータを送ることができるはずで、次は「Androidから米粒AVRへデータを送る」のに挑戦したいと思います。
関連記事
-
-
Android+Arduinoでリモコン3 その2(AndroidAccessory接続)
何度か、Android+リモコンのネタを書いたことがあるのですが、今回はAndroid Access
-
-
androidで気圧・高度計(LPS331AP使用)
Androidと大気圧センサー(LPS331AP)をイヤフォンジャックで繋いで気圧と高度、ついで
-
-
米粒AVRで温度計(STTS751使用)
前回までに紹介したI2CライブラリとLCDライブラリを使って作る、温度計のサンプルです。 温度
-
-
オシロスコープを手に入れた
ついにオシロスコープを買っちゃいました。 と言っても、DSO QUADと言うポータブルタイプの
-
-
Androidで一眼レフカメラのシャッターを制御する
またSoftModemネタです。 調子に乗って arms22さんの記事 iPhoneで一眼レフカメ
-
-
SoundIRModemライブラリのサンプル
SoundIRModemライブラリは、米粒AVR(Tiny10)とAndroid端末をイ
-
-
S2 Resistor Color Code 公開しました。
このアプリは、抵抗のカラーコードから抵抗値を素早く見る為のAndroidアプリです。 4本帯と、5
-
-
Atmel Studio 6
米粒AVR(ATtiny10)の開発を行う為に、Atmel Studio 6.0をインストールし
-
-
Raspberry Piのサウンドを試したら音が出なかった話
(これはX-WindowのVLCメディアプレイヤーのスクショ) Raspberry Piでは、
- PREV
- 米粒AVRでリモコン送信機
- NEXT
- 米粒AVRでSoftModem的なこと その2