SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

ふき消しろうそく

※この記事は「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


(4)これでハードは完成です

プログラム

福野さんのブログのプログラムを、ほぼそのまま使わせていただきました。
ろうそくを息で吹くと、フッと消えて、しばらくすると元どおりに点灯します。

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