-
必要な材料:
- Arduinoボード
- 74HC595シフトレジスタ
- ブレッドボードとジャンパーワイヤー
-
接続方法:
- Arduinoの5Vピンを74HC595のVCCピンに接続します。
- ArduinoのGNDピンを74HC595のGNDピンに接続します。
- Arduinoのデジタルピン(たとえば、デジタルピン8)を74HC595のSER(Serial Data Input)ピンに接続します。
- Arduinoのデジタルピン(たとえば、デジタルピン9)を74HC595のSRCLK(Shift Register Clock)ピンに接続します。
- Arduinoのデジタルピン(たとえば、デジタルピン10)を74HC595のRCLK(Register Clock)ピンに接続します。
-
コード例: 以下に、74HC595を使用してLEDを点滅させる簡単なコード例を示します。
// 必要なライブラリをインクルード #include <Arduino.h> // 接続した74HC595のピン番号を指定 const int SER_Pin = 8; // SERピン const int SRCLK_Pin = 9; // SRCLKピン const int RCLK_Pin = 10; // RCLKピン void setup() { // ピンモードを設定 pinMode(SER_Pin, OUTPUT); pinMode(SRCLK_Pin, OUTPUT); pinMode(RCLK_Pin, OUTPUT); } void loop() { // データをシフトレジスタに送信 shiftOut(SER_Pin, SRCLK_Pin, MSBFIRST, B00000001); // レジスタの内容を出力 digitalWrite(RCLK_Pin, HIGH); digitalWrite(RCLK_Pin, LOW); // 一定時間待機 delay(1000); // 別のデータをシフトレジスタに送信 shiftOut(SER_Pin, SRCLK_Pin, MSBFIRST, B00000000); // レジスタの内容を出力 digitalWrite(RCLK_Pin, HIGH); digitalWrite(RCLK_Pin, LOW); // 一定時間待機 delay(1000); }
このコードでは、74HC595のSERピンにデータをシフトインし、RCLKピンで出力します。上記の例では、LEDを点滅させるためにデータを送信しています。
このように、74HC595を使用すると、Arduinoのデジタルピン数を拡張することができます。さまざまなデジタル出力を制御するために、74HC595を利用して便利なプロジェクトを作成することができます。