SHIROのIchigoJam日記

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

ShingoDake(信号ダケ)

IchigoDake工作の新作「ShingoDake」を作ってみました。


I2C接続の8bitI/OエキスパンダIC「PCF8574AN」を使って、LEDを光らせて信号機にしました。
光るアクセサリ気分でいかがでしょうか。

回路図はこちら。

プログラムリストはこちら。

10 '*Shingo Dake
20 '@LOOP
30 C=7:P=1:GSB 210
40 WAIT 300
50 C=6:GSB 210
60 WAIT 120
70 C=5:GSB 210
80 WAIT 120
90 P=2:GSB 210
100 WAIT 240
110 FOR J=1 TO 3
120 P=2:GSB 210
130 WAIT 30
140 P=0:GSB 210
150 WAIT 30
160 NEXT
170 P=1:GSB 210
180 WAIT 120
190 GOTO 20
200 '
210 '@SIGNAL
220 LED 1
230 D=1<もちろん、違うプログラムを仕込んだIchigoDakeに差し替えれば、信号のパターンを変えられます。

材料

データシートの12〜13ページに、I2Cデバイスアドレスの設定方法が書いてあります。
今回はA0,A1,A2端子をGNDに落としているので、ライトモードアドレスは70hになります。
ただしIchigoJamのI2CR/I2CWコマンドでは、最後のR/Wビットを入れない7ビットでアドレスを指定するので、プログラムでは「#38」(38h)で指定しています(250行)。
なお、220行と250行でオンボードのLEDを点滅させていますが、もしI2Cの通信でエラーが出た場合はLEDが点きっぱなしになります。エラー確認用です。