米粒AVRでSoftModem的なこと

米粒AVRからAndroidへデータを送る

米粒AVRとAndroidを繋いで、データのやりとりを行ってみたいと思います。
2つを繋ぐインターフェースは、イヤホンジャック経由の音声データです。

以前、ArduinoとAndroidをイヤホンジャックで繋ぐSoftModemを試したことがありますが、その時とは若干通信手段が異なります。
以前は音声データの周波数の変化でデータを識別していたのですが、米粒AVRでは単純な赤外線リモコンのプロトコル(と言うのか?)を利用します。

簡単に言うと、米粒AVRで作ったリモコン送信機とAndroidのイヤホンジャックに接続するリモコン受信機を直付けすると「米粒AVRからAndroidへデータを送る」ことができると言うことで、今回はその実験です。

 

回路

回路としては、リモコン送信機の回路の赤外線LEDの部分を、イヤホンジャック用に変更。
プログラムもリモコン送信機のものをそのまま使います。
ちなみに、電源は乾電池2本で3Vを想定しています。

tiny10→Android 送信テスト回路
※2013/4/10 回路修正しました。抵抗(R3)を追加しています。

 

Tiny10用 ソース

リモコン送信機のプログラムをそのまま使います。

 

Androidでデータ受信のテスト

データの受信に使うのは、 こちらのSoundIR Analyzerというリモコンデータの解析アプリ。

soundIR スクリーンショット2
受信開始ボタンを押して、アプリを受信待機中にします。

 

ボタンを押す
アプリが受信待機中になれば、作った回路のスイッチ1を押します。

 

tiny10→Android 送信テスト3
正しく受信できれば、このような波形が表示されます。

 

tiny10→Android 送信テスト4
フォーマット解析を行って、受信したデータを確認する。

これはスイッチ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へデータを送る」のに挑戦したいと思います。

 

関連記事

no image

Android+Arduinoでリモコン3のおまけ

Androidとは関係ないのですが、前回の記事  Android+Arduinoでリモコ

記事を読む

Arduinoで温湿度計

Arduinoで温湿度計

秋月電子の温湿度モジュールを使って、温湿度計を作ってみました。 以前「パソコンで温度計」と言うもの

記事を読む

thermometer

パソコンで温度計 #2

今回は温度表示とログ取りアプリを作ったので公開。 前回にArduino+STTS751で作った

記事を読む

SDカード・マイクロSDカード

ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduinoでも比較的簡単にSDカードを

記事を読む

Raspberry Pi - Ethernet

Raspberry Pi インターネット接続

Raspberry Piをインターネットに接続してみた。 有線で接続(Ethern

記事を読む

raspi-pin-header

そうだ、Raspberry Pi用にピンヘッダーのオス・メス変換アダプタを作ろう

  Raspberry PiのI/O端子は、ピンヘッダーとなっていて、電極が出っ張ってる

記事を読む

Raspberry Pi 起動SDカード

Raspberry Piの起動SDカードを準備する

先日入手したRaspberry PiでLinuxを起動する為のSDカードを準備します。 Ras

記事を読む

no image

AndroidにPS2キーボードを繋いでみた

@yishiiさんの素のAndroid端末を外部のキーにより操作する実験と言う記事を参考に、Ardu

記事を読む

no image

Softmodem Terminal 公開しました。

需要がどれほど有るのか疑問に思いつつ、以前のエントリ(AndroidでSoftModemを試してみた

記事を読む

米粒AVR リモコン

米粒AVRでリモコン送信機

米粒AVR(tiny10)を使った赤外線リモコン送信機を作ってみました。 これで送信できるのは

記事を読む

Arduinoで温湿度データロガー
Arduinoで温湿度計 #2

今回は、前回作った温湿度計にRTCモジュールとSDカードアダプタを

Arduinoで温湿度計
Arduinoで温湿度計

秋月電子の温湿度モジュールを使って、温湿度計を作ってみました。 以前

SDカード・マイクロSDカード
ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduin

秋月電子 リアルタイムクロック(RTC)モジュール
秋月のリアルタイムクロック(RTC)モジュール

今回は秋月電子のI2C接続のリアルタイムクロック(RTC)モジュールを

秋月電子 キャラクタLCD
秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、

PAGE TOP ↑