※この記事は「IchigoJam Advent Calendar 2019」に参加しています。
福野さんがブログで、安いマイクモジュールで音を検知してLEDを光らせていました。
fukuno.jig.jp
そのアイデアをいただいて、息で吹き消すLEDろうそくを簡単に作ってみました。
2本立てて動かした動画はこちら。
【IchigoJam】ふき消しろうそく
基板から上に数cm立っているので、ちょっとろうそくっぽいです(^_^)
クリスマスケーキよりお誕生日ケーキに似合いそうです。
材料
作り方
(1)マイクモジュール裏側のジャンパーJ1を、はんだでつなげます。
(2)マイクモジュールのVCC端子・OUT端子に単芯線、GND端子にLEDの-(カソード)線をはんだ付けします。
(3)線を切りそろえて、IchigoJamのCN4ソケットに挿します。
マイクモジュール側 | IchigoJamのCN4 |
---|---|
LED+ | OUT1 |
LED-/GND | GND |
OUT | IN2 |
VCC | VCC |
プログラム
福野さんのブログのプログラムを、ほぼそのまま使わせていただきました。
ろうそくを息で吹くと、フッと消えて、しばらくすると元どおりに点灯します。
10 '*CANDLE 20 OUT 1,1 30 A=ANA(2) 40 B=ANA(2):C=B-A:A=B 50 IF ABS(C)<5 GOTO 30 60 WAIT 30:OUT 1,0 70 WAIT 60:GOTO 20
応用編・ろうそく2本
もう1本ろうそくを作って、2本とも息で消えるようにしました。
2本目のろうそくは以下のように接続しています。
マイクモジュール側 | IchigoJamのCN4 |
---|---|
LED+ | LED |
LED-/GND | OUT4 |
OUT | OUT3 |
VCC | OUT2 |
LED端子で光らせているので、オンボードのLEDも一緒に光ります。
プログラムは以下のとおりです。
2本のろうそくで別々にタイミングを取っているので、息を吹きながら口を横に動かすと、2本が時間差で消灯・点灯します。
10 '*CANDLE 2 20 CLT:OUT 2,1:OUT 3,-1 30 D=-60:H=-60 40 A=ANA(2) 50 B=ANA(2):C=B-A:A=B 60 E=ANA(7) 70 F=ANA(7):G=F-E:E=F 80 T=TICK() 90 IF T-D>60 IF ABS(C)<5 OUT 1,1 ELSE OUT 1,0:D=T 100 IF T-H>60 IF ABS(G)<5 LED 1 ELSE LED 0:H=T 110 GOTO 40