[PIC] 赤外線リモコンの送信データを調べる

Posted by
ぴろり
Posted at
2015/01/17 20:12
Trackbacks
関連記事 (0)
Post Comment
コメントできます
Category
電子工作 カテゴリ
カバーイメージ

 アナログ停波のため廃棄することになったビデオデッキを分解した際、赤外線リモコンの受光素子を手に入れました。適当に電源をつないでオシロで観察したところ、手元のリモコンからの信号をピコピコと拾っているようです。何かに使えないかしら? …ということで、まずは赤外線リモコンから送信されているデータを解析できるよう PIC16F84A を使ったデコーダを作ってみました。赤外線受光素子の出力を PIC で解析し、結果を16桁×2行の液晶ユニットに表示するようにします。

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  

はじめに

 自分でゼロからコードを書く前に、Tomcat さんがズバリそのもの、PIC マルチメーカー対応赤外線リモコンコード解析器の情報を一式公開されています。これは、各メーカのデータ送信形式の違いにも対応できるよう、プッシュ スイッチで各種設定が可能で、非常に完成度の高いものです。オリジナルは PIC16F84 用ですが、手元にある PIC16F84A はこの上位互換チップのため、回路もソースコードも手を加えず、ほとんどそのままで動作させることができました。本当にありがとうございます。

 リモコンが送信しているデータが読めるようになれば、赤外線 LED の点灯を自前でエミュレートして、学習リモコンのようなものを自作できたりします。また、解析したデータをパソコンに送るようにして、各種リモコンからパソコンを操作するデバイスを作ったりできますし、逆にパソコンから様々な家電を操作するようなものも作れそうです。

ダウンロード

 ソースコードや回路図、基盤設計図などをダウンロードできます。

  • IrMultiDecoder v2.5a1更新差分
    • 手持ち部品に合わせて、ターゲット デバイスを PIC16F84A に変更しました
    • 手持ち部品にダイオードがなかったので、プッシュ SW の回路を LCD のデータバスと共用せずに独立させました
    • 手持ちの液晶だと濃すぎて読めなかったので、濃淡調整のためのボリュームを追加しました
    • コンパイラ設定が面倒だったので、ソース内の無印数値(?)を 10 進数として解釈するよう指示を追加しました*1
    • 半角カタカナが嫌いなので、起動ロゴを変更しました
    • データ長の表示を「xByt+yBit」から「x.ybyte」と小数点表示にしました
    • ページ番号表示を「P.1」に変更しました

ギャラリー

 中央 PIC16F84A の左側にある銀色のパッケージが、ビデオデッキから取り出した謎の赤外線受光ユニットで、型番も仕様も一切不明。破壊覚悟で電源に繋いでみたところ、他の赤外線受光ユニットなどと同じような感じです。

 近所の HARD OFF から 105 円で買ってきた PlayStation2 用のリモコンからデータを読んでみたところ。データ形式が変態独自の Sony 製のリモコンも、プッシュ スイッチを操作して動作モードを設定変更すれば、きっちり読んでくれます*2。また、よくわからない中華 TV のリモコンも解析できました。ジャンク価格で買った適当なリモコンであっても、受信コードさえ解析できればこちらのもの。発信機の土台として失敗を恐れずにバキバキ改造できますね。

メモ

 開発中に気が付いたりした点の雑多なメモ。

オリジナルの回路で、RB1 に繋がるプッシュ スイッチがプルアップもプルダウンもされていないのは何故?
 OPTION_REG.RBPU が enable 指定されており、PIC 内部でプルアップされている。
 キーの押下げをスキャンするには、RB3 あるいは RB4 を L レベルにして、RB1 の状態を読めばよい。キーが押されていれば RB1 は L になるし、押されていなければプルアップのため H になる。
 RB2 は、LCD の E ポートに接続されているため、迂闊にオン/オフすると LCD に変なデータを食わせてしまうが、それ以外のポートはスイッチ用のセレクタに共用できる。
 スイッチの先のダイオードは、LCD のデータバスが他のバスに影響しないため? またはスイッチの同時押しでも正しく読めるように?
この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  

  1. *1 コンパイラへの引数の追加指定なしに、ソースコードを突っ込むだけでよいはずです
  2. *2 自分が一から作ると、多分、特定のメーカーしか読み込めないモノになっていたと思われ…

この記事を読んだ人はこんな記事も読んでいます記事リコメンデーションについて

カバー画像:100 円オーディオ アンプの罠

関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。