Ардуина подерживает изменения режима работы выводов в ходе основного цикла?

К примеру, могу я не в сетапе, а в основном теле программы отключать/подключать встроенные резисторы и менять пины ввода на пины вывода и обратно? Например использовать один пин как вывод, потом переключиться на ввод, подключить резистор и прочесть реакцию устройства, после чего вернуть всё обратно? Или их лучше задавать один раз на всю программу? Проблема в том, что я могу перевести пин в режим ввода, и задать на нём высокое напряжение резистором, но не могу в этом режиме подтянуть его к земле кроме как внешне, только отключить резистор и вывести в третье логическое, и я не хочу использовать ещё один пин.
6 года назад от EvАoi

1 ответ

0 голосов
Еще раз и поподробней.
К примеру у тебя пин 10 сконфигурирован как выход и на нем сидит светодиод.
Ты хочешь отключить светодиод, переключить пин 10 в INPUT, потом к нему что то подключить (допустим кнопку) , считать е состояние. Потом эту кнопку отключить, переключить пин в OUTPUT и подключить к ней снова светодиод? А откуда процессор узнает, что эти переключения пора делать?
Значит тебе надо еще один пин иметь. Для общения.
Тогда пропадает весь смысл затеи.

Или ты хочешь что то читать в аналоговом режиме, а потом тот же аналоговый пин переключать в режим цифрового выхода?

В принципе на Ардуино (точне на микроконтроллерах Атмега) выводов боле чем достаточно, а потому жалеть и экономить их смысла нет.

Либо ты задумал что то этакое, что нам, увы, не известно. :- (
6 года назад от человек вопрос

Связанные вопросы