Использование аналогового порта А0 как цифрового

papant
Offline
Зарегистрирован: 27.04.2016

Добрый день! 

Использую Ардуино Леонардо. Помогите, пожалуйста, разобраться с аналоговыми пинами 1-5. Мне необходимо использовать их как цифровые. Тут в мануале написано следующее

"Выводы Arduino, соответствующие аналоговым входам, имеют номера от 14 до 19. Это относится только к выводам Arduino, а не к физическим номерам выводов микроконтроллера Atmega. Аналоговые входы могут использоваться как цифровые выводы портов ввода/вывода. Например, код программы для установки вывода 0 аналогового входа на порт вывода со значением HIGH:

pinMode(14, OUTPUT);

digitalWrite(14, HIGH);"

Вставляю это в пустой проект - на 14 ноге (А0) высокий уровень не появляется. Стоить изменить пин на любой с 0 до  13 (которые сразу подписаны как цифровые) - то все норм, высокий уровень вольтметром снимается...

Объясните пожалуйста бестолковому. Поиском искал, мануал читал )

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Попробуйте так и писать - A0, а не 14.

Вообще, в файле pins_arduino.h для leonardo в Arduino IDE пины A0 - A5 соответствуют D18 - D23.

vde69
Offline
Зарегистрирован: 10.01.2016

попробуй на другой ноге, например так

pinMode(A1, OUTPUT);

digitalWrite(A1, HIGH);"

papant
Offline
Зарегистрирован: 27.04.2016

Огромное спасибо! Заработало.  У самого бы ума не хватило спорить с мануалом )

Тему можно закрывать

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

А для A0 почему не работает данная опция? Тоже вот A0 попробовал - не работает.