フォト
2024年9月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
無料ブログはココログ

« Aliexpressでブレッドボード用電源を購入しました | トップページ | 書籍「挿すだけ!ARM32ビット・マイコンのはじめ方」を購入 »

2015年4月28日 (火)

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線のみです。


Dscn3777

回路図的には、下記のようか感じです。



ボードの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文)

5)LachピンをHIGHに設定して、内部レジスタの値をパラレルポートからデータ出力(180行)

意外と簡単に、出力ピン増やせます。

« Aliexpressでブレッドボード用電源を購入しました | トップページ | 書籍「挿すだけ!ARM32ビット・マイコンのはじめ方」を購入 »

IchigoJam」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: IchigoJamでシフトレジスタを利用してみる:

« Aliexpressでブレッドボード用電源を購入しました | トップページ | 書籍「挿すだけ!ARM32ビット・マイコンのはじめ方」を購入 »