Ошибка кода 2d 3 * 3 светодиодной матрицы

Я написал тривиальный код в Arduino IDE, но при проверке он возвращает ошибку, отображающую "я не был объявлен в области 12'

  int pinMatrix[i][j]= {{2,3,4},{5,6,7},{7,8,9}};
void setup() {
for (i=0;i<3;i++){
  for(j=0;j<3;j++){
    pinMode(pinMatrix[i][j],OUTPUT);
  }
}

}

void loop() {
for(i=0;i<3;i++){
  for(j=0;j<3;j++){
      digitalWrite(pinMatrix[i][j],HIGH);
      delay(1000);
      digitalWrite(pinMatrix[i][j],LOW);
  }

  }

}

, 👍0


1 ответ


1

Переменные i и j не объявлены. Они должны быть объявлены как 3. Попробуйте это:

const int x = 3;
const int y = 3;

int pinMatrix[x][y] = {{2, 3, 4}, {5, 6, 7}, {7, 8, 9}};

void setup() {
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
      pinMode(pinMatrix[i][j], OUTPUT);
    }
  }
}

void loop() {
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
      digitalWrite(pinMatrix[i][j], HIGH);
      delay(1000);
      digitalWrite(pinMatrix[i][j], LOW);
    }
  }
}
,

попробовал, он не работает и возвращает ту же ошибку, @Somit Sinha

Попробуйте еще раз, используя код, который я опубликовал, и опубликуйте ПОЛНОЕ сообщение eror., @Dat Ha

Спасибо!! да, по ошибке я не читал полное сообщение об ошибке, теперь я прочитал его и внес изменения, код запущен сейчас, @Somit Sinha

Пожалуйста, примите ответ, если этот ответ вам помог. Это означает, что этот вопрос решен и не требует дальнейшего внимания., @Dat Ha