質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

1回答

1113閲覧

シフトレジスタを3つ用いて24個のLEDを制御したいです

退会済みユーザー

退会済みユーザー

総合スコア0

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2022/01/08 06:25

編集2022/01/12 10:55

前提・実現したいこと

Arduinoを用いて24個のLEDを制御します。
シフトレジスタSN74HC595AGを3つ用いたカスケード接続を行いたいです。

発生している問題・エラーメッセージ

以下のサイトを参考に回路を組みました。
https://okasho-engineer.com/shiftresistors-leds-control/

シフトレジスタの数を3つにして24個のLEDを制御する場合、
プログラムはどのように書き換えればいいでしょうか。
2つの場合は希望通りに動作しました。

該当のソースコード

Arduino

1//シフトレジスタを2つ用いた16個のLED制御 2#define SER 7 3#define RCLK 6 4#define SRCLK 5 5 6byte data[2][1]; 7 8void setup() { 9 pinMode(SER, OUTPUT); 10 pinMode(RCLK, OUTPUT); 11 pinMode(SRCLK, OUTPUT); 12} 13 14void loop() { 15 data[0][0] = B11111110; 16 data[1][0] = B11111111; 17 digitalWrite(RCLK, LOW); 18 shiftOut(SER, SRCLK, LSBFIRST, data[0][0]); 19 shiftOut(SER, SRCLK, LSBFIRST, data[1][0]); 20 digitalWrite(RCLK, HIGH); 21 delay(75); 22}

試したこと

data[3][1];

data[0][0]=データ1;
data[1][0]=データ2;
data[2][0]=データ3;
shiftOut(SER,SRCLK,LSBFIRST,data[0][0]);
shiftOut(SER,SRCLK,LSBFIRST,data[1][0]);
shiftOut(SER,SRCLK,LSBFIRST,data[2][0]);

という様に書き換えて試したのですが、うまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2022/01/08 08:29

「という様に書き換えて試したのですが、うまくいきませんでした。 」 どう、うまくいかなかったのでしょう。 基本的にそれでいいように思いますけど。
thkana

2022/01/08 08:34

> うまくいきませんでした。 では、どうなったのですか? 「うまくいかない」という評価なんてどうでもよくて、実際に起った現象はなにか、それを観察することが大事です。 少なくとも、3つを繋いだ回路で「2つの場合」のスケッチを適用すれば3つのうち2つまでは2つの回路と変わらず動くはずですが、どうですか(その場合、3つ目は'前回'の1つ目と同内容になるはず)。 ならないなら、回路(配線)が間違っている可能性大です。
thkana

2022/01/08 08:52

逆に、2つの回路で3つ用のスケッチでも2つ目までは設定されるはず。 とりあえずソフトがおかしいかハードが悪いか、これで弁別できるのでは? (2つでは動いているということなので...)
guest

回答1

0

byte data[2][1];

シフトレジスタは3つあるんですから、3つの要素を確保しましょう
また、2次元配列にする意味があんまし見えませんが、、参考元がそうしてんだからアレですが

それと、回路図を提示しましょう

投稿2022/01/08 06:56

編集2022/01/08 07:11
y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問