VIR-USB 接続赤外線学習リモコンに関する技術の解説です。

**回路 [#q6ba721f]
***DigiSpark [#o87c95d2]
DigiSpark は AVR マイコン ATTiny85 を搭載した、USB 通信が可能な小型の Arduino 互換ボードです。ソフトウェアによる USB 通信ライブラリ V-USB によって、USB 経由でファームウェアを書き込むことができます。このキットは、DigiSpark に赤外線送受信回路を追加してファームウェアを書き込むことで、USB で制御する赤外線リモコンを実現しています。

***赤外線送受信シールド [#zf625cfc]
Arduino 用の拡張基板をシールドと呼びます。本家からも赤外線送受信用の [[Infrared Shield:https://digistump.com/wiki/digispark/tutorials/ir]] が発売されていますが、本家版の回路では赤外線 LED を ATTiny85 の出力ピンで直接駆動しているため、赤外線信号が遠くまで届きませんでした。そこで、ATTiny85 の出力でトランジスタを駆動し、赤外線 LED を大電流で光らせる、赤外線送受信シールドを独自に開発しました。シールドのピン配列は本家版と互換になっていますので、そのまま差し替えて使うこともできます。基板上のジャンパパターンも本家版と互換で、組み立ての際は J1 と J4 をショートさせる必要があります。
Arduino に外部回路を追加するための拡張基板をシールドと呼びます。本家からも赤外線送受信用の [[Infrared Shield:https://digistump.com/wiki/digispark/tutorials/ir]] が発売されていますが、本家版の回路では赤外線 LED を ATTiny85 の出力ピンで直接駆動しているため、赤外線信号が遠くまで届きませんでした。そこで、ATTiny85 の出力でトランジスタを駆動し、赤外線 LED を大電流で光らせる、赤外線送受信シールドを独自に開発しました。シールドのピン配列は本家版と互換になっていますので、そのまま差し替えて使うこともできます。基板上のジャンパパターンも本家版と互換で、組み立ての際は J1 と J4 をショートさせる必要があります。

本家版シールドにはありませんが、手動での操作ができるように、シールド基板上にスイッチを1つ追加しました。ただ ATTiny85 の I/O ピンは PB0~PB5 の6ピンしかないのですが、PB3,PB4 は USB 用に占有されていて、PB1 には元々赤色 LED と電流制限抵抗(R5, 回路図には値がありませんが、実測 660Ω 程度) が接続されていて、ピンに空きがありません。そこで表示用の赤色 LED が接続されている PB1 に、LED と並列にスイッチを入れて、PB1 を入出力共用ピンにしています。PB1 は通常は出力ピン扱いですが、時分割で短時間入力ピンとしても利用しています。スイッチを ON にしたときに出力がぶつかってショートしないように、スイッチには直列に200Ωの抵抗を入れています。スイッチを ON にすると、この200Ωの抵抗を通して赤色 LED が薄く点灯してしまいますが、ピンを入出力共用にしている都合上やむを得ません。
本家版 Infrared Shield にはありませんが、手動での操作ができるように、シールド基板上にスイッチを1つ追加しました。ただ ATTiny85 の I/O ピンは PB0~PB5 の6ピンしかありませんが、PB3,PB4 は USB 用に占有されていて、PB1 には元々赤色 LED と電流制限抵抗(R5, 回路図には値がないですが、実測 700Ω 程度) が接続されていて、ピンに空きがありません。そこで表示用の赤色 LED が接続されている PB1 に、LED と並列にスイッチを入れて、PB1 を入出力共用にしています。PB1 は通常は出力ピン扱いですが、時分割で短時間入力ピンとしても利用しています。スイッチを ON にしたときに出力がぶつかってショートしないように、スイッチには直列に200Ωの抵抗を入れています。スイッチを ON にすると、この200Ωの抵抗を通して赤色 LED が薄く点灯してしまいますが、ピンを入出力共用にしている都合上やむを得ません。

Digispark では PB5 が入出力ピンとして利用できますが、互換ボードでは PB5 がリセットのままになっているケースがあるため、どちらのボードでも使用できるように、今回は PB5 は使用していません。
なお Digispark では PB5 が入出力ピンとして利用できますが、クローン品では PB5 がリセットのままになっているケースがあるため、どちらのボードでも使用できるように、今回は PB5 は使用していません。

|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)|

***赤外線 LED と受光モジュール [#afdbcce8]




***赤外線 LED と受光モジュール [#afdbcce8]

**マイコン側ファームウェア [#sf812602]
**PC側制御プログラム [#m259ee97]
**Pukiwiki プラグイン [#yce45d4c]



**回路図[#s898a180]
-クリックで拡大します。左が DigiSpark の回路図、右が赤外線送受信シールドの回路図です

&ref(回路図1.png,zoom,400x300);
&ref(回路図2.png,zoom,400x300);


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS