Во-первых, многие микроконтроллеры и контроллеры цифровых сигналов будут иметь внутренние подтягивающие резисторы. Вот пример, Atmel ATMega164.
Как правило, там будет регистр, который позволяет включать и выключать внутренние подтягивания. Из-за различий в процессе изготовления эти внутренние подтяжки имеют очень широкий диапазон и не являются хорошим выбором, если вам требуется очень тщательный контроль за потреблением тока в приложениях со сверхнизким энергопотреблением. Если важно поддерживать низкое количество компонентов, это простой способ сделать это. Использование внутренних подтягиваний для аппаратного отладки не было бы хорошей идеей, так как невозможно предсказать их точное значение.
Будь то 100к Ωзначение адекватно зависит. Если это просто переключатель, который будет периодически переключаться пользователем, то 100к Ωбудет хорошим выбором для минимизации энергопотребления. Для вещей, которые будут переключаться быстрее, таких как вращающиеся датчики, процесс, который я бы прошел
- Найти максимальный ток потребления в техпаспорте
- Рассчитайте значение подтягивания, используя закон Ома
- Выберите резистор стандартного размера на несколько размеров больше, в зависимости от необходимой скорости
- Проверьте и посмотрите, дает ли выбранный размер резистора требуемое время нарастания и спада
- Отрегулируйте соответственно
Так что, если максимальный ток потребления на вывод GPIO был 10 мА и работал при 5 В: R =Вязнак равно5 В10 м= 500 Ом, Сохранение этого значения R как можно меньше позволит учесть самые острые края и самые высокие частоты переключения.