Arduino и внешние периферийные устройства - PullRequest
4 голосов
/ 26 октября 2009

Я парень из CS, начинающий с Arduino. Вероятно, это очень простой вопрос электроники, но после изучения уроков по Arduino все связано с Arduino с помощью резистора.

Ну, так как я следую инструкциям, я знаю, какой тип резистора мне следует использовать, но чего я не знаю, почему я должен его использовать? и какой тип резистора выбрать, чтобы я сделал что-то, что не описано в руководстве.

Ответы [ 3 ]

8 голосов
/ 27 октября 2009

Резистор просто служит для ограничения тока на выводе или из него на случай, если что-то пойдет не так. Если ваш AVR решает выводить сигнал высокого уровня на выводе, который другой хочет получить низким (или наоборот), могут возникать большие, повреждающие токи, если они не ограничены каким-либо сопротивлением. Предел тока для AVR составляет около 20 миллиампер, и, учитывая, что напряжение обычно составляет 5 В, что-то большее, чем 250 Ом, «подойдет».

Чтобы обеспечить запас прочности, 1-10k - отличный выбор; для цифровых сигналов это редко имеет значение, если вы не пользуетесь высокоскоростными приложениями (в любом случае, за пределами возможностей AVR). Для аналоговых входов также рекомендуется использовать аналогичный резистор, так как величина тока, которую АЦП берет на выборку, пренебрежимо мала, когда ваш резистор находится в диапазоне нескольких килоом.

6 голосов
/ 27 октября 2009

Основополагающим принципом, который вы хотите выучить, является Закон Ома , который описывает соотношение между напряжением, сопротивлением и током в цепи.

5 голосов
/ 05 декабря 2011

Резисторы используются для

  1. предельный ток,
  2. делить напряжение
  3. защита от перенапряжения
  4. подтягивание, опускание
  5. преобразование тока в напряжение
  6. и т.д ...

1) предел выходного тока, абсолютный максимальный ток на IO составляет 40 мА, типичный светодиод работает при ± 2 В 20 мА.
значение сопротивления можно рассчитать как (5 В - 2 В) / (0,02 А) = 150 Ом, обычно используется резистор 220 Ом, потому что: он потребляет меньше энергии, не пропускает 20 миллиампер, и нет заметной разницы в излучаемом свете .

2) если у вас есть аналоговое напряжение, которое колеблется от 0 до 10 вольт, вам понадобится делитель напряжения на 1/2. выберите в качестве примера z2 10k и рассчитайте z1 на 10k * (Vin, max / 5V -1). принять значение сопротивления выше, чем первоначальный расчет. и пересчитать новый Вут.

3) поместите резистор 10 кОм последовательно между аналоговым входом Arduino и «для измерения напряжения»

3) если вам нужно измерить аналоговый ток, вы поместите резистор на землю и на аналоговом входе рассчитаете резистор по Z = 5 В / ампер.

4) если вы подключите кнопку к Arduino, вам нужно будет установить резистор повышающий или понижающий. Если вы не используете резистор, вход плавающий и может принимать любое значение (высокое или низкое). или вы можете включить внутреннее слабое подтягивание. по pinMode (xx, INPUT); digitalWrite (хх, ВЫСОКИЙ) ;. и отключение с помощью digitalWrite (xx, LOW); по умолчанию подтягивание отключено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...