ジュールシーフ × ATtiny-85 × フルカラーLED (2)

前回の続き。

一般的な機器類で使い古した1V程度の電池切れ、の乾電池(単3か単4あたりを想定。今回は単3)の電圧を昇圧してもう少し使いたい、そしてその昇圧回路もできれば多少安く組みたい、という流れです。いくつか試して、とりあえずHT77XAシリーズにしました、が前回までの内容で。

haseharu.hatenablog.com

一般的な電気機器で利用していて電池切れとなった単3電池(ここでは1.0V程度とする)では、低電力LEDでも光らないと思います。実際に1Vを切った電池をつなげてみてもやはりダメそうです。

f:id:haseharu:20211222212440j:plain

というか、そもそもここで使っている赤色LEDは順電圧2.0Vなので新品のアルカリ単3電池1本でも発光に必要な電流は流れません。

akizukidenshi.com

ATtiny-85も動きません。

akizukidenshi.com

前回までで手元にあったHT77XA昇圧後、低電力LEDやら順電圧3.1Vの青色LEDなんかも光るところまで確認しています。この使い古し電池を昇圧した電源を使って、クリスマスのイルミネーション用にフルカラーLEDが少しずつ色が変わっていくプログラムをATtiny-85で動かしたいと思います。

akizukidenshi.com

プログラム自体は、こちらの書籍*1の「第1章 4 カラーLED」のプログラムをほぼそのまま使わせてもらっています。

www.rutles.net

  #define LED_R 0
  #define LED_G 1
  #define LED_B 2

void setup() {
}

void loop() {
  uint8_t r, g, b;
  uint8_t i;

  for(i=0;;i++){
    
    r = (sin(2 * 3.14 / 256 * i) + 1) * 128;
    g = (sin(2 * 3.14 / 256 * (i + 85)) + 1) * 128;
    b = (sin(2 * 3.14 / 256 * (i + 170)) + 1) * 128;

    analogWrite(LED_R,r);
    analogWrite(LED_G,g);
    analogWrite(LED_B,b);
    delay(20);    
    }
}

Arduino Unoあたりで一度試して動作確認ができたらATtiny-85をArduino化しプログラムを書き込みます。

haseharu.hatenablog.com

書き込み終わったら、ATtiny-85とフルカラーLED等をつないで、LEDが光ればOKです。上記エントリでも書いていますが、ATtiny-85自体のピン番号とGPIOの番号は違うので注意が必要。以下、データシート含めて再掲。今回はGPIOの「0,1,2」を使っています。

https://akizukidenshi.com/download/ds/atmel/attiny25_attiny45_attiny85.pdf

ATtiny-85 Pinout
1 5
2 3
3 4
4 GND
5 0
6 1
7 2
8 VCC

どんな機器類で使い古した電池なのかやフルカラーLEDにつなぐ抵抗などの条件にもよりますが、使い古しの電池でも十数時間程度は光るのではないかと思います。

www.youtube.com

これで、クリスマスのイルミネーションやら5歳の息子がよくやっている「部屋を暗くしていろいろなものを光らせる光の世界」遊びごっこで十分使えるのでこれ以上作り込みませんでしたが、アクセサリーっぽくするのも選択肢としてありかと。

ただ、その場合は、ATtiny-85での実装はサイズも大きくなるのでフルカラーLEDを適宜色を変えて光らせ続けたい、という今回のプログラム例とほぼ同じニーズであれば、ATtiny-85などは使わず、イルミネーションタイプのフルカラーLEDを利用する、という選択肢もあるかと思います。それだけであれば実装がとても簡単になります。

akizukidenshi.com

今回利用したHT7733AとHT7750Aはどちらも0.7V入力をそれぞれ3.3V or 5.0Vへ昇圧してくれます。モーターやらをがんがん回す用途でなければ、簡単な電子工作系は電池1本昇圧、でいけそうな気がしていて、最近はもっぱら3.3Vや5Vを作るときは単3電池をこのHT77XAシリーズを使うかXCL102をDIP化したDCDC昇圧コンバータで昇圧して、で間に合っています。

9V電源をレギュレータで5Vに降圧して使うこともありますが、特にこどもが触るものであれば、使い古しの電池を使って動かしている回路は、もしものショートのときなども考えると少し安心な気がしています。

そして何より使い古しの電池1本でATtiny-85が動くので、LEDを光らせる以外にもまだまだ活用することができるのかな、ということを実感できたのが一番の収穫でした*2

*1:改訂版ではない方

*2:今回もATtiny-85から結局LEDを光らせてますが、確認したかったのはATtiny-85の動作の方です。