米粒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へデータを送る」のに挑戦したいと思います。

 

関連記事

秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、ちょっと比較してみる。 買っ

記事を読む

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

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

記事を読む

no image

PICでMicroBridgeをやってみた

今回は、@yishiiさんが公開されている、PIC24FJ64GB002用のMicroBridgeソ

記事を読む

ArduinoでSDカード

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

記事を読む

Raspbianの起動SDカードを再利用

一度、Raspbianのイメージを書き込んだSDカードは、フォーマットが違う為にWindowsでは利

記事を読む

no image

Androidで一眼レフカメラのシャッターを制御する

またSoftModemネタです。 調子に乗って arms22さんの記事 iPhoneで一眼レフカメ

記事を読む

no image

Androidで一眼レフカメラのシャッターを制御する(MicroBridge接続)

以前書いた、Androidで一眼レフカメラのシャッターを制御するでは、AndroidとArduino

記事を読む

S2 SoundIR analyzer

赤外線リモコン受信機(イヤホンジャック接続)のアプリ

 前回の赤外線リモコン受信機(イヤホンジャック接続)の回路 を使う為のAndroidア

記事を読む

no image

AVRISPmk2

米粒AVR(ATtiny10)のプログラム書き込み用にAVRISPmk2を購入しました。 先人

記事を読む

パソコンで温度計 #2

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

記事を読む

Arduinoで温湿度計 #2

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

Arduinoで温湿度計

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

ArduinoでSDカード

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

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

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

秋月の小型キャラクタLCD

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

PAGE TOP ↑