Как включить встроенные pullup резисторы на Arduino UNO?

nikitosk
Offline
Зарегистрирован: 12.11.2011

Привет всем!

В документации по Arduino UNO прочитал:

Каждый из 14 цифровых выводов Uno может настроен как вход или выход, используя функции pinMode(), digitalWrite(), и digitalRead(), . Выводы работают при напряжении 5 В. Каждый вывод имеет нагрузочный резистор (по умолчанию отключен) 20-50 кОм и может пропускать до 40 мА.

Подскажите пожалуйста, как можно их включить?

HOCKU
HOCKU аватар
Offline
Зарегистрирован: 25.04.2011

 pinMode(pin, INPUT);

digitalWrite(pin, 1);

если не ошибаюсь, так.

а вообще вот статья: arduino.ru/Tutorial/DigitalPins

nikitosk
Offline
Зарегистрирован: 12.11.2011

 Спасибо, прочитал.

Хочу спросить:

У меня к МК подключена клавиатура 4х4 кнопки.

Достаточно ли на портах к которым она подключена включить таким способом подтягивающие резисторы или

все таки надо ставить внешние?

И возможно ли включение встроенного подтягивающего резистора на ноге которая работает как выход?

 

Простите мне мои глупые вопросы, я пока новичок и очень боюсь спалить единственную ардуину, которая шла ко мне целый месяц из Китая :))

whoim
Offline
Зарегистрирован: 03.11.2011

 все будет работать, ничего не спалите. Я так пользую клавиатуру.

step962
Offline
Зарегистрирован: 23.05.2011

nikitosk пишет:

Хочу спросить:

У меня к МК подключена клавиатура 4х4 кнопки.

Достаточно ли на портах к которым она подключена включить таким способом подтягивающие резисторы или

все таки надо ставить внешние?

Сильно зависит от кострукции клавиатуры. Вполне возможны варианты, когда она вообще не к цифровым входам подключается, а к аналоговым. Простейший пример - "LCD Shield For Arduino" от dfrobot.

nikitosk
Offline
Зарегистрирован: 12.11.2011

1. Клавиатура пленочная графитовая, подключена к цифровым входам которые замыкаются между собой.

Например замыкаем выводы ответственные за 1 ряд и 1 столбец это цифра 1, 2 ряд и 1 столбец это цифра 4 и т.д.

Вот по этому принципу.

2. Возможно ли включение встроенного подтягивающего резистора на ноге которая работает как выход?

 

whoim
Offline
Зарегистрирован: 03.11.2011

nikitosk пишет:

роенного подтягивающего резистора на ноге которая работает как выход?

 

так там и включается. Диджиталврайт хай на выходы, кнопки замыкать на гнд.

nikitosk
Offline
Зарегистрирован: 12.11.2011

Это включит pullup резистор для входа:

pinMode(pin, INPUT);

digitalWrite(pin, 1);

А это включит pullup резистор для выхода:

pinMode(pin, OUTPUT);

digitalWrite(pin, 1);

я совсем запутался,

а как тогда просто установить на выходе высокий уровень не включая подтягивающий резистор??

например чтобы зажечь светодиод с внешним подтягивающим резистором.
 

 

whoim
Offline
Зарегистрирован: 03.11.2011

 А зачем светодиоду подтягивающий резистор? Может, ограничивающий? Я думал что в режиме OUTPUT нет понятий подтягивающих резисторов. В режиме INPUT он включается автоматом при высоком уровне, ибо зачем он нужен при низком я пока не понимаю.

nikitosk
Offline
Зарегистрирован: 12.11.2011

whoim пишет:

 А зачем светодиоду подтягивающий резистор? Может, ограничивающий? Я думал что в режиме OUTPUT нет понятий подтягивающих резисторов. В режиме INPUT он включается автоматом при высоком уровне, ибо зачем он нужен при низком я пока не понимаю.

Вот теперь все понятно :)

Просто не владею терминологией.

 

SergeyIL
Offline
Зарегистрирован: 24.11.2021

Лучше не поленится и в схеме предусмотреть реальный подтягивающий резистор. Вот в NodeMCU я понадеялся на описание языка ардуино и получил немножко гемороя при отлаживании - в них такой штуки нет, а среда спокойно схавала команды и на входе то может быть HIGH, то LOW после нажатия кнопки на землю, всегда LOW, а перед этим загадочная неопределенность :)

Kakmyc
Offline
Зарегистрирован: 15.01.2018

SergeyIL пишет:

Лучше не поленится и в схеме предусмотреть реальный подтягивающий резистор. Вот в NodeMCU я понадеялся на описание языка ардуино и получил немножко гемороя при отлаживании - в них такой штуки нет, а среда спокойно схавала команды и на входе то может быть HIGH, то LOW после нажатия кнопки на землю, всегда LOW, а перед этим загадочная неопределенность :)

Некрофил детектед.
Тема 10лет спала.