Таким образом, вы записываете на контакты 1 и 2, не устанавливая их для вывода, и вы устанавливаете вывод 22 на низкий уровень без причины, если вывод 22 вообще существует.

я очень простой тестэскиз в котором я пытаюсь установить булавкуHIGH а затем прочитать его состояние сdigitalRead, Вот мой набросок.

void setup()
{
    Serial.begin(9600);
}

void loop()
{
    delay(1000);

    pinMode(3, OUTPUT);
    digitalWrite(3, HIGH);
    delay(1000);

    pinMode(3, INPUT);
    Serial.println(digitalRead(3));
}

Результат последовательного монитора:

0
0
0
0

Я пришел к выводу, что изменение pinMode остановит егоHIGH, Так что установив штифтHIGH вOUTPUT режим, а затем меняется наINPUT режим изменит его наLOW, Поэтому digitalRead всегда будет возвращать 0. Если я не изменю pinMode, он не сможет прочитать пин-код. Итак, как я могу прочитать текущую настройку контакта, который находится вOUTPUT режим без потери значения?

 Zaz24 нояб. 2015 г., 00:09
Я думаю, что лучшая практика - отслеживать состояния выводов, если это необходимо, используя переменные в вашей программе. Я предположил, что это было из соображений эффективности.

Ответы на вопрос(0)

Ваш ответ на вопрос