VIR-USB 接続赤外線学習リモコンに関する技術の解説です。
DigiSpark は AVR マイコン ATTiny85 を搭載した、USB 通信が可能な小型の Arduino 互換ボードです。ソフトウェアによる USB 通信ライブラリ V-USB によって、USB 経由でファームウェアを書き込むことができます。このキットは、DigiSpark に赤外線送受信回路を追加してファームウェアを書き込むことで、USB で制御する赤外線リモコンを実現しています。
Arduino 用の拡張基板をシールドと呼びます。本家からも赤外線送受信用の Infrared Shield が発売されていますが、本家版の回路では赤外線 LED を ATTiny85 の出力ピンで直接駆動しているため、赤外線信号が遠くまで届きませんでした。そこで、ATTiny85 の出力でトランジスタを駆動し、赤外線 LED を大電流で光らせる、赤外線送受信シールドを独自に開発しました。シールドのピン配列は本家版と互換になっていますので、そのまま差し替えて使うこともできます。基板上のジャンパパターンも本家版と互換で、組み立ての際は J1 と J4 をショートさせる必要があります。
本家版にはありませんが、手動での操作ができるように、シールド基板上にスイッチを追加しました。ただし ATTiny85 の I/O ピンはPB0~PB5 の6ピンしかない上に、PB3,PB4 は USB 用に、PB5 はリセット用に占有されているため、I/O ピンに空きがありません。そこで表示用の赤色 LED が接続されている PB1 に、LED と並列にスイッチを入れて、PB1 を入出力共用ピンにしています。PB1 は通常は出力ピン扱いですが、時分割で短時間入力ピンとしても利用しています。スイッチを ON にしたときにショートしないように、スイッチには200Ωの抵抗を入れています。スイッチを ON にすると、この200Ωの抵抗を通して赤色 LED が薄く点灯してしまいますが、ピンを入出力共用にしている都合上やむを得ません。
Tiny85ピン番号 | I/O名称 | 用途 |
1 | PB5 | リセット |
2 | PB3 | USB- |
3 | PB4 | USB+ |
4 | GND | GND |
5 | PB0 | 赤外線LED |
6 | PB1 | 赤色LED/スイッチ |
7 | PB2 | 赤外線受信モジュール |
8 | VCC | VCC(5V) |