Использование аналогового входа как цифрового

Homo Faber
Offline
Зарегистрирован: 25.05.2019

Здравствуйте гуру Arduino.

Возможно вопрос глупый, но всё же: приспичило мне использовать аналоговый вход, как цифровой, кнопку на него повесить. Порылся в первоисточниках и для пробы(!) склепал скетч:

int N_ValN;                                                       // Состояние порта последнее
int N_ValO = 0;                                                   // Состояние порта предыдущее (исходное 0)

void setup()
{
  Serial.begin(9600);                                             // Подключаем последовательный порт со скоростью 9600

  pinMode(14, OUTPUT);                                            // Назначаем 14-й порт (А0) цифровым выходом и ...
  digitalWrite(14, HIGH);                                         // ... подаём на него высокий уровень
}

void loop()
{
  N_ValN=digitalRead(14);                                         // Читаем цифровой вход 14
  if (N_ValN != N_ValO)                                           // Проверяем старое и новое состояние на НЕсовпадение
     {                                                            // Если состяние НЕ совпадают
      Serial.print("Состояние: ");                                // Выводим текст и ...
      Serial.println(N_ValN);                                     // ... текущее состяние
      N_ValO = N_ValN;                                            // Запоминаем текущее состяние
     }
  delay(50);                                                      // Задержка в 50 мс для исключения дребезга контактов
}

Всё работает, спору нет, но меня смутило вот что: решил проверить ток на разрыве кнопки и немножко обожрался ухи ;-), ибо ток получился 82 мА.
Итак вопрос: а не слишком ли большой это ток для Arduino?

b707
Offline
Зарегистрирован: 26.05.2017

Кнопка это INPUT, а не OUTPUT!
А вы замкнули пин на gnd и подали на него высокий уровень - так у вас пин запросто сгорит.

Учите языки, чтобы не путать вход с выходом, а мужской сортир с женским...

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Он щас ещё спросит «а почему ж тогда работает»)))))