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

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

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

SORACOMは、通信とクラウドを融合したIoTプラットフォームです。SIMカードの提供とその管理機能を提供する「SORACOM Air」と、よりセキュアな通信と管理をスムーズにする「SORACOM Beam」で構成。APIによりさまざまな機能を呼び出すことも可能です。

Q&A

0回答

63閲覧

arduinoのスケッチでエラーが出る

sora29

総合スコア0

SORACOM

SORACOMは、通信とクラウドを融合したIoTプラットフォームです。SIMカードの提供とその管理機能を提供する「SORACOM Air」と、よりセキュアな通信と管理をスムーズにする「SORACOM Beam」で構成。APIによりさまざまな機能を呼び出すことも可能です。

0グッド

0クリップ

投稿2024/10/08 08:21

実現したいこと

プログラムが無知なのでエラーの原因と正解スケッチが知りたい

発生している問題・分からないこと

6個のLEDの点灯状態をarduinoを通して7セグメントLEDの表示数値を変えたいのでネットで調べたら指導プログラムが回答され、それをスケッチしたがエラーが出ました。

エラーメッセージ

error

1:\1.家\Arduino\7セグメント\sinndokei\shinndokei\shinndokei.ino:34:21: error: 'photoDiodePins' was not declared in this scope 2D:\1.家\Arduino\7セグメント\sinndokei\shinndokei\shinndokei.ino:34:21: note: suggested alternative: 'photDiodePins' 3D:\1.家\Arduino\7セグメント\sinndokei\shinndokei\shinndokei.ino: In function 'void displayDigit(int)': 4D:\1.家\Arduino\7セグメント\sinndokei\shinndokei\shinndokei.ino:49:7: error: expected ';' before ':' token 5 6exit status 1 7 8Compilation error: 'photoDiodePins' was not declared in this scope

該当のソースコード

//フォトダイオードピンの定義 const int photDiodePins[] = { 2, 3, 4, 5, 6, 7 }; //7セグメント表示器のセグメントピンの定義 const int segmentPins[] = { 8, 9, 10, 11, 12, 13, 14 }; //数字ごとのセグメントパターン(a~g) const byte digitPatterns[7] = { B0111111, // 0 B0000110, // 1 B1011011, // 2 B1001111, // 3 B1100110, // 4 B1101101, // 5 B0111101, // 6 }; void setup() { // フォトダイオードピンを入力として設定 for (int i = 0; i < 6; i++) { pinMode(photDiodePins[i], INPUT); } //7セグメント表示器のピンを出力として設定 for (int i = 0; i < 7; i++) { pinMode(segmentPins[i], OUTPUT); } } void loop() { int ledCount = 0; // フォトダイオードの状態を読み取る for (int i = 0; i < 6; i++) { if (digitalRead(photoDiodePins[i]) == HIGH) { ledCount = i + 1; break; } } //7セグメント表示器に数値を表示 displayDigit(ledCount); } void displayDigit(int digit) { byte pattern = digitPatterns[digit]; for (int i = 0; i < 7; i++) { digitalWrite(segmentPins[i], (pattern >> i) & 0x01) : } }

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

対策例や原因がいろいろ書かれていましたが具体的な対処方法が解りませんでした。
私の知識のなさを痛感しました。

補足

特になし

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

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

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

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

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

setoppu

2024/10/08 12:08

エラーメッセージをちゃんと読みましょう。 >shinndokei.ino:34:21: error: 'photoDiodePins' was not declared in this scope >//フォトダイオードピンの定義 >const int photDiodePins[] = { 2, 3, 4, 5, 6, 7 }; の変数名と、 > for (int i = 0; i < 6; i++) { > if (digitalRead(photoDiodePins[i]) == HIGH) { で参照している変数名は同じもののつもりですか? エディタの検索機能でちゃんとヒットするか確認してみましょう。 >shinndokei.ino:49:7: error: expected ';' before ':' token 文の最後は":"でしたっけ?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問