Используйте 10 кОм, это хорошее значение.
Для более подробной информации, мы должны посмотреть, что делает подтягивание. Допустим, у вас есть кнопка, которую вы хотите прочитать с помощью микроконтроллера. Кнопка представляет собой мгновенный SPST (однополюсный однократный) переключатель. Он имеет две точки подключения, которые либо связаны, либо нет. Когда кнопка нажата, две точки соединяются (переключатель замкнут). Когда они отпущены, они не подключены (переключатель разомкнут). Микроконтроллеры по своей природе не обнаруживают подключение или отключение. То, что они чувствуют, это напряжение. Поскольку этот переключатель имеет только два состояния, имеет смысл использовать цифровой вход, который, в конце концов, предназначен только для одного из двух состояний. Микро может определить, в каком состоянии находится цифровой вход.
Подтягивание помогает преобразовать открытое / закрытое соединение коммутатора в низкое или высокое напряжение, которое может воспринимать микроконтроллер. Одна сторона переключателя подключена к земле, а другая - к цифровому входу. Когда переключатель нажат, линия становится низкой, потому что переключатель по существу замыкает его на землю. Однако, когда переключатель отпущен, ничто не приводит линию к какому-либо определенному напряжению. Он может просто оставаться на низком уровне, принимать другие близлежащие сигналы посредством емкостной связи или, в конечном итоге, плавать до определенного напряжения из-за незначительного тока утечки через цифровой вход. Работа нагрузочного резистора заключается в обеспечении положительного гарантированного высокого уровня, когда переключатель разомкнут, но все же позволяет переключателю безопасно замыкать линию на землю, когда он замкнут.
Существует два основных конкурирующих требования к размеру подтягивающего резистора. Он должен быть достаточно низким, чтобы надежно тянуть линию высоко, но достаточно высоким, чтобы не вызывать слишком большой ток, когда переключатель замкнут. Оба эти понятия являются субъективно субъективными, и их относительная важность зависит от ситуации. В общем, вы делаете подтягивание достаточно низким, чтобы убедиться, что линия находится на высоком уровне, когда переключатель разомкнут, учитывая все вещи, которые в противном случае могут сделать линию на низком уровне.
Давайте посмотрим, что нужно, чтобы подтянуть линию. Глядя только на требования к постоянному току, можно обнаружить ток утечки в линии цифрового входа. Идеальный цифровой вход имеет бесконечное сопротивление. Реальные, конечно, нет, и степень, в которой они не идеальны, обычно выражается как максимальный ток утечки, который может либо выходить, либо входить в контакт. Допустим, ваш микро настроен на максимальную утечку 1 мкА на своих цифровых входных выводах. Поскольку подтягивание должно поддерживать линию на высоком уровне, в худшем случае предполагается, что вывод выглядит как ток утечки 1 мкА на землю. Например, если использовать нагрузку 1 МОм, то 1 мкА вызовет 1 Вольт на резисторе 1 МОм. Допустим, это система на 5 В, так что это означает, что штырь может быть только до 4 В. Теперь вы должны взглянуть на спецификацию цифрового входа и посмотреть, каковы минимальные требования к напряжению для высокого логического уровня. Это может составлять 80% от Vdd для некоторых микросхем, что в данном случае составляет 4 В. Поэтому подтягивание 1 МОм находится прямо на границе. Вам нужно по крайней мере немного меньше, чем это для гарантированного правильного поведения из соображений DC.
Однако есть и другие соображения, и их сложнее определить количественно. Каждый узел имеет некоторую емкостную связь со всеми другими узлами, хотя величина связи уменьшается с расстоянием, так что релевантными являются только близлежащие узлы. Если на этих других узлах есть сигналы, эти сигналы могут подключаться к вашему цифровому входу. Более низкое значение подтягивания делает линию более низким импедансом, что уменьшает количество паразитных сигналов, которые она будет принимать. Это также дает более высокий минимальный гарантированный уровень постоянного тока по отношению к току утечки, поэтому между этим уровнем постоянного тока и тем, где цифровой вход может интерпретировать результат как низкий логический уровень, а не предполагаемый высокий логический уровень, будет больше места. Так сколько достаточно? Очевидно, что подтягивание в 1 МОм в этом примере недостаточно (слишком высокое сопротивление). Почти невозможно угадать связь с соседними сигналами, но я бы хотел, чтобы по крайней мере запас на порядок превышал минимальный случай DC. Это означает, что я хочу, чтобы нагрузка составляла 100 кОм или ниже, хотя бы если бы вокруг было много шума, я бы хотел, чтобы оно было ниже.
Есть еще одна причина, по которой подтягивание снижается, и это время нарастания. Линия будет иметь некоторую паразитную емкость относительно земли, поэтому она будет экспоненциально затухать в направлении значения питания, а не мгновенно переходить туда. Допустим, вся паразитная емкость составляет до 20 пФ. На этот раз подтягивание 100 кОм составляет 2 мкс. Требуется 3 постоянных времени, чтобы достичь 95% расчетного значения, или 6 мкс в этом случае. Это не имеет значения в человеческое время, поэтому не имеет значения в этом примере, но если бы это была цифровая шина, которую вы хотели бы использовать при скорости передачи данных 200 кГц, она бы не работала.
Теперь давайте посмотрим на другое конкурирующее соображение, которое является текущим потерянным при нажатии переключателя. Если это устройство работает от сети или иным образом обрабатывает значительную мощность, несколько мА не будут иметь значения. При 5 В требуется 5 кОм, чтобы нарисовать 1 мА. Это на самом деле «много» тока в некоторых случаях, и намного больше, чем требуется из-за других соображений. Если это устройство с батарейным питанием и переключатель может быть включен в течение значительной доли времени, то каждый мкА может иметь значение, и вы должны очень тщательно об этом подумать. В некоторых случаях вы можете периодически производить выборку переключателя и включать его только на короткое время вокруг образца, чтобы минимизировать потребление тока.
Помимо особых соображений, таких как работа от батареи, 100 кОм - это достаточно высокий импеданс, чтобы я нервничал по поводу усиления шума. Потеря тока в 1 мА при включенном переключателе кажется излишне большой. Таким образом, 500 мкА, что означает полное сопротивление 10 кОм, является правильным.
Как я уже сказал, используйте 10 кОм. Это хорошая ценность.