SHIROのIchigoJam日記

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

電子ルーレット99

★この記事は「IchigoJam Advent Calendar 2025」に登録しています。

7セグメントLED×2個で、00~99の2桁の数字を表示するルーレット基板です。
電波新聞社「電子工作マガジン」2025年夏号P31~35の記事「電子ルーレットを作ろう」(東亜無線電機株式会社 栗田昌治氏)を参考にしました。

4511版


電子工作マガジンの栗田氏の回路とほぼ同じで、10進バイナリカウンタ4518の出力を、7セグメントデコーダー4511を通して、LEDの数字を光らせています。
発振回路をトランジスタ弛張発振にするなど、若干変更して部品数を減らしています。

回路図

基板データ

*この基板データは、CC BYライセンスとします。どうぞご利用ください。

(C) 2025 Shiro Saito (https://www.ichigoaman.jp)

4026版


発振回路に7400、7セグメントデコーダーに4026を使って、さらに部品数を減らしました。
また上記の4511版だと、数字が00→01→02→…→98→99→00と1ずつカウントアップしていくので、ボタンを押す時間で「50番代を狙おう」などと数字をある程度狙えてしまいます。
この4026版は、10の位と1の位を別々の発振回路で高速に動かすことで、出したい数字を狙えないようにしています。

回路図

IchigoJamプログラム版


IchigoJamのプログラムで、00~99の2桁ルーレットを作ってみました。
何かキーを押すと、ルーレットが回ります。
ただ数字を表示するだけではつまらないので、8倍角で大きく表示しています。

10 '*ROULETTE99
20 CLV:SRND TICK()+ANA(2):CLS
30 @SHT
40 LC 12,23:?"PUSH KEY";
50 IF !INKEY() CONT
60 LC 12,23:?"        ";
70 FOR T=1 TO 5
80 S=RND(100)
90 GSB @PRTS
100 BEEP 10,2
110 NEXT
120 GOTO @SHT
130 @PRTS
140 N=S/10:X=9
150 GSB @PRT1
160 N=S%10:X=15
170 GSB @PRT1
180 RTN
190 @PRT1
200 A=48+N
210 FOR I=0 TO 6
220 D=PEEK(A*8+I):V=#A00+X+I*32:B=`10000000
230 FOR J=0 TO 5
240 POKE V+J,D&(B>>J)>0
250 NEXT
260 NEXT
270 RTN