SHIROのIchigoJam日記

IchigoJamの電子工作とプログラミングをメインに

7セグメントLED拡張基板

ソケットの配置が変わったIchigoJam Uに合わせて、さっそく簡単な拡張基板を作ってみました。
7セグメントLEDを光らせます。

以前作った「IchigoMax」と同様に2階建てです。


脚の長いソケットを使っています。
秋月電子から通販で買いました。
http://akizukidenshi.com/catalog/g/gC-07912/
http://akizukidenshi.com/catalog/g/gC-07913/


今回使った7セグメントLEDの内部回路図と、Excelで引いた基板配線図。
IchigoJamのOUT1〜6とLEDピンの出力が、7セグメントLEDのa〜gに対応します。


0〜9の数字を表示する、ルーレットのプログラムを作ってみました。
ボタンを押すと、ルーレットが回って止まります。

10 '*7SEG ROULETTE*
20 LET [0],`0111111,`0000110,`1011011,`1001111,`1100110,`1101101,`1111101,`0100111,`1111111,`1101111
30 N=0
40 GOSUB 200
50 '@START
60 IF BTN()==0 THEN GOTO 50
70 FOR I=1 TO 12
80 N=RND(10)
90 GOSUB 200
100 BEEP 20,2
110 WAIT 5
120 NEXT
130 FOR I=1 TO 6
140 N=RND(10)
150 GOSUB 200
160 BEEP 20,2
170 WAIT 20
180 NEXT
190 GOTO 50
200 '@PRINTN
210 Z=[N]
220 FOR P=1 TO 6
230 Y=Z%2
240 OUT P,Y
250 Z=Z/2
260 NEXT
270 Y=Z%2
280 LED Y
290 RETURN

※新OUT命令対応版

ファームウェア1.0.2b8から、LEDポートがOUT7ポートとして制御できるようになりました。
対応したルーレットプログラムです。だいぶシンプルになりました。

10 '*7SEG ROULETTE*
20 LET [0],`0111111,`0000110,`1011011,`1001111,`1100110,`1101101,`1111101,`0100111,`1111111,`1101111
30 OUT [0]
40 '@START
50 IF BTN()==0 THEN GOTO 40
60 FOR I=1 TO 10
70 OUT [RND(10)]
80 BEEP 20,2
90 WAIT 6
100 NEXT
110 FOR I=1 TO 5
120 OUT [RND(10)]
130 BEEP 20,2
140 WAIT 12
150 NEXT
160 GOTO 40