先日、職場の忘年会でビンゴ大会をやったのですが、7セグメントLEDで数字を表示するハンディタイプのビンゴマシンが会場にありました。
「これならIchigoJamで作れるんじゃないか?」と考えて、IchigoJamを組み込んだビンゴゲーム専用機「IchigoBingo」を作ってみました。
秋月電子で買った超大型16セグメントLEDを、デジタルトランジスターRN1201でドライブしています。
本来はLEDに電流制限抵抗を付けないといけない所ですが、検討中です。
数字表示のコントロールは、2進−7セグメントデコーダー74HC4511を使っています。
ビンゴゲームの数字は1〜75で、10の位は0〜7を出せばいいので、信号線が1の位4ビット+10の位3ビット=合計7本で済むのがミソです。それぞれOUT1〜7(LED)に割り振って出力しています。
効果音出力は、2SC1815で増幅してスピーカーを付けました。100均の立方体スピーカーを分解して、内部のスピーカー部品を取り出して使っています。
※参考:以前に作った2SC1815スピーカーアンプ。今回も同じスピーカーを分解して使っています。
操作は「Bingo64」と一緒で、ボタンを短く押すとシュート、1秒間長押しするとレビューモードになります。BTN端子は自動起動のためにGNDに落として、ボタン入力にはIN1を使っています。
ビンゴのプログラムはこちら。
1 '*IchigoBingo 2 CLV:OUT 0 3 '@SHOOT 4 IF IN(1) GOTO 3 5 IF !S SRND ANA(2)+TICK() 6 CLT 7 '@PUSH 8 IF TICK()>60 GSB 22:GOTO 3 9 IF !IN(1) GOTO 7 10 W=5:FOR I=1 TO 10:GSB 15:NEXT 11 W=20:FOR I=1 TO 5:GSB 15:NEXT 12 [N]=1:S=S+1 13 IF S<75 GOTO 3 14 END 15 '@SHOOT1 16 N=RND(75)+1 17 IF [N] GOTO 15 18 BEEP 10,2 19 OUT N/10*16+N%10 20 WAIT W 21 RTN 22 '@REVIEW 23 N=0 24 '@REVIEWLOOP 25 P=1:N=N+1 26 IF N>75 BEEP 30,30:WAIT 60:OUT 0:RTN 27 IF ![N] GOTO 24 28 BEEP 30,2 29 OUT N/10*16+N%10 30 '@REVIEW1 31 IF IN(1) P=0 32 IF !IN(1) && P=0 GOTO 24 33 GOTO 30