Массив Arduino и оператор if - PullRequest
0 голосов
/ 16 мая 2018

У меня проблема. Мой код для Arduino:

void count (int a){
  if (a == 0) {
    int led_pin [4] = {3, 4, 5, 6};
  }

  else{
    int led_pin [2] = {4, 5, 6, 9};
  }

  for (int i = 0; i <= 7; i++){
    digitalWrite(led_pin[i], HIGH);
  }
}

и я получаю вывод:

'led_pin' не был объявлен в этой области

Как объявить массив или изменить значения массива?

1 Ответ

0 голосов
/ 16 мая 2018

Вы получаете ошибку, потому что вы ограничили область действия переменной led_pin внутри условия if и else.

Также вы пытаетесь изменить всю переменную, вы не должны этого делать.

Попробуйте это.

void count(int a){
    int led_pin[2][4]={{3,4,5,6},{4,5,6,9}};
    if( a !=0)
    {
        a=1;
    }
    for(int i=0;i<4;i++) //I don't know why you used 7 in your code.
    {
        digitalWrite(led_pin[a][i],HIGH);
    }
}

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...