Arduinoで74HC4051APを使う−その2−

前回に引き続き、Arduinoネタです。

前回は74HC4051AP(以後4051)を使って、8つのボタン入力を制御しました。
今回は4051を使って、8つのLEDの制御を行います。

前回は入力、今回は出力です。
これでマトリックス回路の準備ができるということです。

4051の使い方は前回とほとんど一緒です。
違うのはデータの入力をしていた z から
出力を行うことです。

LEDを8つ並べて、それぞれに出力していきます。

LEDを順番に0.1秒おきに点滅を繰り返すプログラムです。


// ポート番号を指定
int s0 = 2;
int s1 = 3;
int s2 = 4;

int led = 5;

// 変数宣言
int cal0 = 0;
int cal1 = 0;
int cal2 = 0;

int count = 0;

void setup() {
pinMode(s0, OUTPUT);
pinMode(s1, OUTPUT);
pinMode(s2, OUTPUT);
pinMode(led, OUTPUT);

Serial.begin(9600);
}

void loop() {
for (count = 0; count <= 7; count++) {
cal0 = bitRead(count, 0);
cal1 = bitRead(count, 1);
cal2 = bitRead(count, 2);

digitalWrite(s0, cal0);
digitalWrite(s1, cal1);
digitalWrite(s2, cal2);

// 点滅を0.1秒おきに繰り返す
digitalWrite(led, HIGH);
delay(100);
digitalWrite(led, LOW);

Serial.println(count);

delay(100);
}
}