SHIROのIchigoJam日記

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

時計シールド2026

7セグメントLEDで時:分の時計を表示する、IchigoJam用の拡張基板です。
なるべく部品数を少なく、かつ簡単なプログラムで表示することを目指しました。

回路図

分表示

2桁の分表示は、IchigoJamのOUT1~OUT7で出力します。

ポート 表示
OUT1~OUT4 分の1の位
OUT5~OUT7 分の10の位

プログラム例としては

OUT (M/10)<<4+M%10

で、M分が表示されます。
7セグメントデコーダーIC・4511にビットデータを送って、数字を表示します。
なお、10の位は0~5まで表示できればいいので、3ビットにしています。

時表示

2桁の時表示は、分と同様に表示しようとするとIchigoJamのポート数が足りないので、OUT8とOUT9でパルスを送る方式にしています。

ポート 表示
OUT8(IN1) 時を+1
OUT9(IN2) 時を0にリセット

具体的には

OUT 8,1:OUT 8,0

で、時を+1。

OUT 9,1:OUT 9,0

で、時を0にリセットします。
プログラム例としては

OUT 9,1:OUT 9,0
FOR J=1 TO H:OUT 8,1:OUT 8,0:NEXT

で、H時が表示されます。
バイナリBCDカウンタIC・4518に、クロック信号とリセット信号を送ります。
なお、1時~9時までは、10の位は表示しません。
(よくあるデジタル時計と同じ表示にするのと、回路を簡単にするため)
また、10の位は「1」しか表示できないので、12時制表示です。

基板データ

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

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

材料

以下の順番でハンダ付けすると作りやすいです。

プログラム

テストプログラム

12:00からスタートして、時:分を高速で動かしてテスト表示します。

10 CLV
20 FOR P=1 TO 9:OUT P,0:NEXT
30 OUT 9,1:OUT 9,0
40 FOR H=1 TO 12:OUT 8,1:OUT 8,0:NEXT
50 FOR M=0 TO 59
60 OUT (M/10)<<4+M%10
70 WAIT 12
80 NEXT
90 H=H+1
100 IF H>12 H=1:OUT 9,1:OUT 9,0
110 OUT 8,1:OUT 8,0
120 GOTO 50

時計プログラム

12:00からスタートして、時計が動きます。
カーソルキー左右で分の調整、上下で時の調整ができます。

10 '*DIGITAL CLOCK
20 CLV:CLT:H=12
30 FOR P=1 TO 9:OUT P,0:NEXT
40 @MLOOP
50 IF TICK()>3599 CLT:M=M+1
60 M=M-BTN(28)+BTN(29)
70 IF M<0 M=59
80 IF M>59 M=0:H=H+1
90 H=H-BTN(31)+BTN(30)
100 IF H<1 H=12
110 IF H>12 H=1
120 OUT (M/10)<<4+M%10
130 WAIT 6
140 IF G=H GOTO @MLOOP
150 OUT 9,1:OUT 9,0
160 FOR J=1 TO H:OUT 8,1:OUT 8,0:NEXT
170 G=H:GOTO @MLOOP