IchigoJamでシフトレジスタを利用してみる
以前、arduino用に製作した4桁 7セグスタティック表示ボードをIchigoJaimに
接続してみました。
仕組み的には、74HC595 という8ビット出力シフトレジスタを4連結して出力
32個のLEDをON/OFFをしています(1桁で8個のLED、4桁で32個のLED)。
IchigoJamとの接続はVCC、GND、OUT1、OUT2、OUT3の4線のみです。
回路図的には、下記のようか感じです。
ボードのGND → IchigoJam のGND に接続
ボードの5V(実際は3.3V) → IchigoJam のVCC に接続
ボードのclock → IchigoJam のOUT1 に接続
ボードのlach → IchigoJam のOUT2 に接続
ボードのDATA → IchigoJam のOUT3 に接続
若干、電力不足(1つのLEDにつき510Ωの抵抗を付けており、LED当たり2.8mAしか
流れませんが全点点灯すると、90mAとなりIchigoJamの3.3V三端子レギュレータの
50mAを超えてしまいます)ですが、実験ですのでよしとします。
プログラムは、こんな感じです。
100 ' OUT1: CLOCK, OUT2: LACH, OUT3: DATA
130 LET [0],`11111100,`01100000,`11011010,`11110010
140 OUT2,0 :'Lach :LOW
150 FOR N=0 TO 3
160 D=[N]:GOSUB 500
170 NEXT
180 OUT2,1:'Lach :HIGH
190 END
500 'FUNC D:data
510 FOR I=0 TO 7
520 OUT 1,0 :'clk :LOW
530 OUT 3, D>>I & 1: 'DATA out
540 OUT 1,1 :'clk :High
550 NEXT
560 RETURN
手順
1)LachピンをLOW設定して、データ送信開始(140行)
2)クロックピンをLOWにした後、データピンにデータをセット(520行、530行)
3)データピンにデータセット後、クロックピンをHIGHにしてデータ確定(540行)
4) 2)3)を繰り返して、送信に必要なビットデータを送信(510行 FOR文~550行 NEXT文)
意外と簡単に、出力ピン増やせます。
« Aliexpressでブレッドボード用電源を購入しました | トップページ | 書籍「挿すだけ!ARM32ビット・マイコンのはじめ方」を購入 »
「IchigoJam」カテゴリの記事
- Ichigojam Rが届きました(2021.02.05)
- β版 IchigoJam Rを予約注文しました(2021.01.23)
- IchigoJamのファームウェア 1.4.1が正式に公開されました(2019.12.10)
- 「ichigoツール」をGithubにて公開しました(2019.11.09)
- ichigojamのファームウェアを1.4b13にアップデートしました(2019.11.06)
« Aliexpressでブレッドボード用電源を購入しました | トップページ | 書籍「挿すだけ!ARM32ビット・マイコンのはじめ方」を購入 »
コメント