Raspberry подтягивающий резистор. Подтягивающие резисторы в GPIO: назначение, принцип работы и применение

Что такое подтягивающий резистор в GPIO. Для чего нужны подтягивающие резисторы. Как работают подтягивающие резисторы. Когда следует использовать подтягивающие резисторы в схемах с GPIO. Какие бывают типы подтягивающих резисторов.

Содержание

Что такое подтягивающий резистор в GPIO

Подтягивающий резистор — это резистор, который используется для задания определенного логического состояния (высокого или низкого уровня) на входе GPIO, когда к нему ничего не подключено. Основные функции подтягивающего резистора:

  • Устранение «плавающего» состояния на входе GPIO
  • Определение логического уровня по умолчанию
  • Ограничение тока через GPIO-пин

Для чего нужны подтягивающие резисторы

Подтягивающие резисторы необходимы в GPIO по следующим причинам:

  1. Устранение неопределенного состояния на входе, когда к нему ничего не подключено
  2. Защита от помех и наводок на длинных линиях связи
  3. Обеспечение корректной работы некоторых протоколов и интерфейсов (например, I2C)
  4. Снижение энергопотребления в некоторых схемах

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

Принцип работы подтягивающего резистора заключается в следующем:


  • Резистор подключается между входом GPIO и источником питания (подтягивающий вверх) или землей (подтягивающий вниз)
  • Когда вход не подключен, через резистор протекает небольшой ток, задающий логический уровень
  • При подключении внешней цепи, она может легко «перебить» слабый ток через резистор

Типы подтягивающих резисторов

Существует два основных типа подтягивающих резисторов:

  1. Подтягивающий резистор (pull-up) — подтягивает вход к высокому уровню
  2. Стягивающий резистор (pull-down) — подтягивает вход к низкому уровню

Выбор типа зависит от конкретной схемы и требуемой логики работы.

Когда нужно использовать подтягивающие резисторы

Подтягивающие резисторы следует применять в следующих случаях:

  • При подключении кнопок и переключателей к GPIO
  • В схемах с открытым коллектором или открытым стоком
  • При работе с шинами I2C, SPI, 1-Wire
  • Для устранения дребезга контактов
  • В схемах с длинными сигнальными линиями

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

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


  • 1-10 кОм — для большинства цифровых схем
  • 4.7 кОм — стандартное значение для шины I2C
  • 10-100 кОм — для схем с низким энергопотреблением

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

Внутренние подтягивающие резисторы в микроконтроллерах

Многие современные микроконтроллеры, включая Raspberry Pi, имеют встроенные подтягивающие резисторы, которые можно включать программно. Это упрощает схемотехнику, но имеет ряд особенностей:

  • Ограниченный выбор номиналов
  • Меньшая точность по сравнению с внешними резисторами
  • Возможность случайного отключения в программе

Поэтому в ответственных узлах часто используют внешние подтягивающие резисторы.

Расчет номинала подтягивающего резистора

При выборе номинала подтягивающего резистора следует учитывать несколько факторов:

  1. Входное сопротивление GPIO
  2. Требуемая скорость переключения
  3. Допустимый ток через GPIO
  4. Напряжение питания схемы

Формула для приблизительного расчета:

R = V / I


Где V — напряжение питания, I — желаемый ток через резистор (обычно 0.1-1 мА).

Особенности применения подтягивающих резисторов в Raspberry Pi

При работе с GPIO Raspberry Pi важно помнить:

  • Максимальное напряжение на GPIO — 3.3В
  • Встроенные подтягивающие резисторы имеют номинал около 50-65 кОм
  • Можно включать как подтяжку вверх, так и вниз программно
  • Для некоторых специальных выводов (I2C, UART) подтяжка включена по умолчанию

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

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

Рассмотрим несколько типичных случаев применения подтягивающих резисторов в схемах с Raspberry Pi:

Подключение кнопки

При подключении кнопки к GPIO используется подтягивающий резистор, чтобы обеспечить определенное состояние входа, когда кнопка не нажата:


import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP)

while True:
    input_state = GPIO.input(18)
    if input_state == False:
        print('Кнопка нажата')
    time.sleep(0.2)

Работа с шиной I2C

Для корректной работы шины I2C требуются подтягивающие резисторы на линиях SDA и SCL. В Raspberry Pi они уже встроены, но иногда требуются дополнительные внешние резисторы:



import smbus

bus = smbus.SMBus(1)
address = 0x48

while True:
    data = bus.read_byte(address)
    print("Полученные данные:", data)
    time.sleep(1)

Заключение

Подтягивающие резисторы играют важную роль в обеспечении надежной работы цифровых схем с GPIO. Правильное использование подтягивающих резисторов позволяет:

  • Избежать ложных срабатываний и неопределенных состояний
  • Повысить помехоустойчивость схемы
  • Обеспечить корректную работу различных интерфейсов
  • Упростить программирование микроконтроллеров

Понимание принципов работы и правильного применения подтягивающих резисторов — важный навык для любого разработчика встраиваемых систем и электронных устройств.


2 способа добавить кнопку в ваш проект Raspberry Pi

Обучение использованию выводов GPIO на вашем Raspberry Pi открывает целый мир возможностей. Основные принципы, усвоенные в проектах для начинающих, прокладывают путь к полезным знаниям в области электроники и программирования DIY.

Этот туториал покажет вам два способа добавить кнопку в ваш проект Raspberry Pi. Кнопка будет использоваться для управления светодиодом. Письменные инструкции доступны под видео.

Тебе понадобится

Для начала убедитесь, что у вас есть следующие компоненты:

  • 1 х Raspberry Pi (подойдет любой, в этом уроке используется модель 3B)
  • 1 х кнопка
  • 1 х светодиод
  • 1 х 220 Ом резистор (более высокие значения в порядке, ваш светодиод будет просто тусклее)
  • 1 х макет
  • Подключить провода

После сбора у вас должны быть компоненты, которые выглядят примерно так:

Вам также понадобится SD-карта с установленной операционной системой Raspbian. Самый быстрый способ сделать это — использовать образ NOOBS (Новое ПО из коробки). Инструкции о том, как это сделать, доступны в этом видео:

Настройка схемы

Вы будете использовать контакты GPIO Pi для создания схемы, и если вы не знакомы с ними, поможет наше руководство по контактам Raspberry Pi GPIO . Схема здесь почти такая же, как в нашем предыдущем проекте Raspberry Pi LED , с добавлением кнопки, которую вы будете использовать сегодня.

Настройте вашу схему в соответствии с этой схемой:

  • Контакты 5 В и GND подключаются к силовым шинам платы.
  • Контакт 12 (GPIO 18) подключается к положительной ветви светодиода.
  • Одна ветвь резистора присоединяется к отрицательной ножке светодиода, а другая ветвь присоединяется к шине заземления макета.
  • Штифт 16 (GPIO 23) крепится к одной стороне кнопки, а другая сторона — к шине заземления макета.

Как только это настроено, вот как это должно выглядеть:

Проверьте правильность схемы, а затем включите Raspberry Pi.

Метод 1: Библиотека RPi.GPIO

После загрузки Pi перейдите в меню и выберите « Программирование»> «Thonny Python IDE» . Откроется новый скрипт Python. Если вы абсолютно новичок в Python, это отличный язык для начинающих, и есть много замечательных мест, где можно больше узнать о Python после того, как вы закончите с этим руководством!

Начните с импорта библиотеки RPi.GPIO и установки режима платы.

import RPi.GPIO as GPIO GPIO.setmode(GPIO.BOARD) 

Теперь объявите переменные для номеров светодиодов и кнопок.

ledPin = 12 buttonPin = 16 

Обратите внимание, что поскольку у нас установлен режим платы BOARD, мы используем номера выводов, а не номера GPIO. Если вас это смущает, распиновка диаграммы Raspberry Pi поможет вам разобраться в этом.

Настройка кнопки

Пришло время настроить выводы GPIO. Установите вывод светодиода на вывод, а вывод кнопки — на вход с подтягивающим резистором

GPIO.setup(ledPin, GPIO.OUT) GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP) 

Текст после GPIO.IN относится к внутреннему подтягивающему резистору Raspberry Pi. Вы должны включить это, чтобы получить чистое чтение с кнопки. Поскольку кнопка идет к выводу заземления, нам нужен подтягивающий резистор, чтобы удерживать входной вывод ВЫСОКИЙ, пока вы не нажмете его.

Прежде чем мы продолжим, давайте посмотрим на подтягивающие и понижающие резисторы.

Интервал: резисторы Pull Up / Pull Down

Когда вы настраиваете вывод GPIO для ввода, он считывает этот вывод, чтобы определить его состояние. В этой схеме вам необходимо прочитать, является ли вывод ВЫСОКИМ или НИЗКИМ, чтобы активировать светодиод при нажатии кнопки. Это было бы просто, если бы это были единственные состояния, которые может иметь булавка, но, к сожалению, существует третье состояние: FLOATING .

Плавающий штифт имеет значение между высоким и низким, что приводит к непредсказуемым действиям входа. Решающие проблемы решают резисторы с повышением / понижением.

Изображение выше представляет собой упрощенную схему кнопки и Raspberry Pi. Вывод GPIO подключается к земле через кнопку. Внутренний подтягивающий резистор присоединяет вывод GPIO к внутреннему источнику питания Pi. Этот ток течет, и штифт безопасно поднимается до ВЫСОКОГО.

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

Понижающие резисторы предназначены для подключения переключателя к выводу питания. На этот раз внутренний резистор прикрепляет вывод GPIO к земле, удерживая его в НИЗКОМ, пока вы не нажмете кнопку.

Теория резисторов Pull-up и Pull-down на первый взгляд сбивает с толку, но это важные знания при работе с микроконтроллерами. Пока, если вы не совсем понимаете это, не волнуйтесь!

Давайте продолжим там, где остановились.

Цикл программы

Далее настройте цикл программы:

while True: buttonState = GPIO.input(buttonPin) if buttonState == False: GPIO.output(ledPin, GPIO.HIGH) else: GPIO.output(ledPin, GPIO.LOW) 

Цикл while True постоянно выполняет код внутри него, пока мы не завершим программу. Каждый раз, когда он зацикливается, он обновляет buttonState , считывая ввод с buttonPin . Пока кнопка не нажата, она остается ВЫСОКОЙ .

Как только кнопка нажата, buttonState становится НИЗКИМ . Это запускает оператор if , поскольку False совпадает с LOW , и светодиод включается. Оператор else отключает светодиод, когда buttonPin не имеет значения False.

Сохраните и запустите ваш скрипт

Сохраните сценарий, нажав « Файл»> «Сохранить как» и выбрав имя файла. Вы можете запустить эскиз, нажав зеленую кнопку воспроизведения на панели инструментов Thonny.

Теперь нажмите кнопку, и ваш светодиод должен загореться! Нажмите красную кнопку Стоп в любое время, чтобы остановить программу

Если у вас возникли трудности, тщательно проверьте код и схему на наличие ошибок и повторите попытку.

Способ 2: нулевая библиотека GPIO

Библиотека RPi.GPIO фантастическая, но в блоке есть новый ребенок. Нулевая библиотека GPIO была создана менеджером сообщества Raspberry Pi Беном Натталлом с целью сделать код проще и удобнее для чтения и записи.

Чтобы проверить новую библиотеку, откройте новый файл Thonny и импортируйте библиотеку.

from gpiozero import LED, Button from signal import pause 

Вы заметите, что не импортировали всю библиотеку. Поскольку вы используете только светодиод и кнопку, вам требуются только те модули в сценарии. Мы также импортируем Pause из библиотеки сигналов, которая является библиотекой Python для управления событиями.

Настроить контакты гораздо проще с GPIO Zero:

led = LED(18) button = Button(23) 

Поскольку библиотека GPIO Zero имеет модули для светодиода и кнопки, вам не нужно настраивать входы и выходы, как раньше. Вы заметите, что, хотя контакты не изменились, цифры здесь отличаются от приведенных выше. Это связано с тем, что GPIO Zero использует только номера контактов GPIO (также известные как номера Broadcom или BCM).

Остальная часть сценария состоит всего из трех строк:

button.when_pressed = led.on button.when_released = led.off pause() 

Здесь вызов pause () просто останавливает выход сценария, когда он достигает дна. События двух кнопок запускаются всякий раз, когда кнопка нажата и отпущена. Сохраните и запустите ваш скрипт, и вы увидите тот же результат, что и раньше!

Два способа добавить кнопку в Raspberry Pi

Из двух способов настройки кнопки, метод GPIO Zero кажется самым простым. О библиотеке RPi.GPIO все еще стоит узнать, так как ее используют большинство начинающих проектов Raspberry Pi . Как бы ни был прост этот проект, знания могут быть использованы для разных целей.

Использование выводов GPIO — отличный способ выучить и изобрести свои собственные устройства, но это далеко не все, что вы можете сделать с Pi. Наше неофициальное руководство по Raspberry Pi неофициальное руководство неофициальное руководство наполнен творческими идеями и учебными пособиями, которые вы можете попробовать сами! В другом учебнике, подобном этому кнопку подключенной к Wi-Fi кнопку подключения

10K, 220 Ом, больше — TOP ADVICE

Содержание

  1. Общий цвет резистора Коды и их использование
  2. 330 Цветовой код резистора в Ом
  3. Цветовой код резистора 1 кОм
  4. Цветовой код резистора 4,7 кОм
  5. Цветовой код резистора 10 кОм
  6. 1 Цветовой код резистора 00 кОм
  7. Цветовой код резистора 1 МОм
  8. Калькулятор резистора яркости светодиодов

Скромный резистор — это самый дешевый компонент в нашей коробке производителя, но он также невероятно полезен. Ранее мы показывали как использовать резисторы в проекте, но основное внимание в этом руководстве уделяется пониманию цветных полосы, которые обвивают центр резистора. Эти цветовые коды резисторов точно говорят нам, сколько Ом тока выдерживает каждое устройство.

Как мы читаем цветовой код резистора? Почему некоторые резисторы имеют четырехполосную цветовую маркировку, а другие — пятиполосную? Какой резистор нужен для светодиода? Мы ответим на все эти вопросы и предоставим вам инструменты для быстрого расчета правильного резистора для всех ваших проектов.

Общий цвет резистора Коды и их использование

Чтение цветовых кодов резисторов слева направо У резисторов нет полярности, поэтому их можно использовать в любой ориентации в цепи. Но чтобы определить правильные значения цветового кода резистора, нам нужно понять цветные полосы на резисторе. На типичном четырехдиапазонном резисторе уровня для хобби есть три цвета в группе. Это первая, вторая значащие цифры и множитель. Последняя полоса — это допуск резистора, допустимая погрешность, если хотите. Для большинства любителей допуск 5% (золото) является идеальным и распространенным. Нам нужно только дополнительное точность, если мы создаем чувствительные схемы, например аудио- и видеопроекты.

Мы всегда можем определить полосу допуска, поскольку это единственная полоса, напечатанная на “плече” резистора. Ищите эту полосу, чтобы определить ориентацию резистора.Пятиполосный резистор имеет дополнительную полосу, третью значащую цифру, которая обеспечивает более высокий уровень точности, если этого требует проект. Итак, у нас есть три значащие цифры, множитель и допуск, который напечатан на плече.Как прочитать цветовой код резистораLet’s используйте резистор на 220 Ом, который обычно используется со светодиодными лампами, в качестве примера того, как читать цветовую маркировку резистора.

  • Первая значащая цифра — красный цвет, и с помощью декодера мы видим, что красный цвет имеет значение 2.
  • Вторая значащая цифра также красного цвета, это дает нам 22.
  • Множитель коричневый, и это расшифровывается как 10. Если мы умножим 22 на 10, мы получим 220.
  • Последняя полоса, допуск, — это золото.  Золото составляет 5 %, что означает, что мы может принять сопротивление с погрешностью 5%.

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

  • Первая значащая цифра красная, и с помощью декодера мы видим, что красный цвет имеет значение 2.
  • Вторая значащая цифра тоже красная, это дает нам 22.
  • Третья значащая цифра черного цвета, что означает 0. Теперь у нас есть 220.
  • Множитель черный, и это расшифровывается как 1. Если мы умножим 220 на 1, получим 220.
  • Последняя полоса, допуск, – золото. Золото составляет 5%, что означает, что мы можем принять сопротивление с погрешностью 5%.

Цветовой код резистора 100 ОмImag e 1 из 2Цветовой код резистора 100 Ом (4-полосный) (Изображение предоставлено Tom’s Hardware) Изображение 1 из 2

Цветовой код резистора 100 Ом (5-диапазонный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2
Резистор 100 Ом обычно используется для защиты светодиодов. Лучше всего использовать с белыми, синими и зелеными светодиодами на 5В. Резисторы на 100 Ом также можно использовать с другими цветами, но ожидайте, что яркость будет отличаться, поскольку они не являются правильным значением. Резисторы на 100 Ом можно определить по цветовому коду резистора Коричневый -Черный-Коричневый-Золотой и, для пятиполосных резисторов, Коричневый-Черный-Черный-Черный-Золотой. Цветовой код резистора 220 Ом Цветовой код резистора 220 Ом (4-полосный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2
Цвет резистора 220 Ом Код (5-диапазонный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2

Тип резистора4-полосный цветовой код</ th>5-полосный цветовой кодОбщее использование
100 ОмКоричневый-Черный-Коричневый-ЗолотойКоричневый-Черный-Черный-Черный-ЗолотойЗащита от светодиодов
220 ОмКрасный-Красный-Коричневый-ЗолотойКрасный-Красный-Черный-Черный-Золотой</ td>Защита от светодиодов
330 ОмОранжевый-Оранжевый-Коричневый-ЗолотойОранжевый-Оранжевый-Черный-Черный-ЗолотойЗащита от светодиодов
1K Ом (1 кОм)Коричневый-Черный-Красный-ЗолотойКоричневый-Черный-Черный-Коричневый-ЗолотойLED P защита, делитель напряжения
4,7 кОмЖелто-фиолетовый-красный-золотой</td >Желто-фиолетовый-черный-коричневый-золотойПодтягивающий/понижающий резистор для I2C
10 кОмКоричневый-Черный-Оранжевый-ЗолотойКоричневый-Черный-Черный-Красный-ЗолотойПодтягивающий/понижающий резистор< /td>
100 кОмКоричневый-Черный-Желто-ЗолотойКоричневый- Black-Black-Orange-GoldПродувочный резистор для конденсатора
1 МОмКоричневый-черный-зеленый-золотойКоричневый-черный-черный-желтый-золотойЕмкостные сенсорные схемы

Резистор на 220 Ом — один из самых распространенных, с которыми сталкиваются любители, потому что он часто используется со светодиодами. Без резистора на 220 Ом простые светодиоды потребляли бы слишком большой ток и быстро перегорали. Мы используем резистор для ограничения тока, который может использовать светодиод. («Свет, который горит в два раза ярче, горит в два раза дольше»). Резистор на 220 Ом можно определить по цветовой маркировке резистора Красный-Красный-Коричневый-Золотой  или Красный-красный-черный-черный-золотой.

Если бы мы использовали синий светодиод с прямым напряжением 3,2 В (напряжение, необходимое для протекания тока через диод) и прямой ток 10 мА (максимальный безопасный ток, который вы можете непрерывно пропускать через устройство, не вызывая повреждения) при напряжении питания 5 В нам понадобится резистор 180 Ом. Вместо этого мы можем использовать резистор на 220 Ом, что на 40 Ом больше, поэтому наш светодиод не будет таким ярким, но будет хорошо защищен.

330 Цветовой код резистора в Ом

330 Ом резистор также довольно распространен, его можно найти в стартовых комплектах электроники для Arduino и Raspberry Pi Pico. Резистор на 330 Ом также подходит для большинства светодиодов, но некоторые из них будут выглядеть тусклее, чем другие. Мы также можем использовать резистор на 330 Ом с зуммером, чтобы понизить тон зуммера от “раздражающего” чтобы немного меньше раздражать. руководство Adafruit по NeoPixel рекомендует защищать контакт GPIO с помощью резистора (от 300 до 500 Ом) между входом контакта данных и GPIO вашего Raspberry Pi/Arduino.

Резистор 330 Ом можно определить по цветовой маркировке резистора Оранжевый-Оранжевый-Коричневый-Золотой или Оранжевый-оранжевый-черный-черный-золотой.

Цветовой код резистора 1 кОм

Изображение 1 из 2Цветовой код резистора 1 кОм (4-полосный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2

Цветовой код резистора 1 кОм (5-диапазонный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2

Резистор 1 кОм (1 кОм) обычно является максимальным сопротивлением, используемым для светодиодов. Любой светодиод, в котором используется резистор 1 кОм, будет тусклым, но загорится.  Резистор 1 кОм обычно используется для точной настройки схемы или подтягивания вверх/вниз вывода данных. Резистор 1K вместе с резистором 2,2K можно использовать для формирования делитель напряжения , который может понизить 5 В до около 3,4В. Это полезно при использовании компонентов 5 В в Raspberry Pi’s GPIO 3,3 В.

Резистор 1 кОм можно идентифицировать по цветовой маркировке резистора Коричневый-Черный-Красный-Золотой или Коричневый-Черный-Черный-Коричневый-Золотой.

Цветовой код резистора 4,7 кОм

Резистор 4,7 кОм полезен для добавления подтягивающего резистора к контактам SDA и SCL устройства I2C. На платах Adafruit Stemma QT это встроено, но если мы будем использовать другую марку платы, нам потребуется добавить резистор 4,7 кОм к обоим контактам. Делая это, мы гарантируем, что данные I2C правильно и последовательно отправляются на наше устройство.

Резистор 4,7 кОм можно идентифицировать по цветовым кодам резистора желтый-фиолетовый-красный- Золото или желто-фиолетовый-черный-коричневый-золотой.

Цветовой код резистора 10 кОм

Изображение 1 из 2Цветовой код резистора 10 кОм (4-полосный) (Изображение предоставлено : Tom’s Hardware)Изображение 1 из 2

Цветовой код резистора 10 кОм (5-диапазонный) (Изображение предоставлено Tom’s Hardware)Изображение 1 из 2

Часто используется резистор 10 кОм как подтягивающий резистор для входного контакта. Например, на Arduino мы можем использовать резистор 10 кОм, чтобы подтягивает входной контакт, так что при нажатии кнопки он подтягивает вход на контакте 5 В, вызывающем действие в нашем коде. Мы использовали резистор 10 кОм, чтобы подтянуть контакт данных на датчике температуры DHT22 в нашем предыдущий номер резистора.

Резистор на 10 кОм может быть идентифицирован по цветовой маркировке резистора Коричневый-Черный-Оранжевый-Золотой или Коричневый-Черный-Черный-Красный-Золотой.

1 Цветовой код резистора 00 кОм

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

Резистор на 100 кОм можно определить по цветовому коду Коричневый-черный-желтый-золотой или коричневый-черный-черный-оранжевый-золотой для пятиполосного резистора.

Цветовой код резистора 1 МОм

Это большое сопротивление, и большинству любителей/производителей оно никогда не понадобится. Мы использовали резистор 1 МОм с Arduino для создания емкостного сенсорного интерфейса (наш собственный Makey Makey). Но большинству людей он никогда не понадобится. Однако резистор на 1 МОм имеет цветовую маркировку: коричневый-черный-зеленый-золотой или коричневый-черный-черный-желтый-золотой.

Резистор на 1 МОм можно идентифицировать по цветовой маркировке резистора Коричневый-черный-зеленый-золотой или Коричневый-черный-черный-желтый-золотой.

Калькулятор резистора яркости светодиодов

У нас есть коробка, полная светодиодов, но какие резисторы подходят для каждого цвета? Чтобы решить это, нам нужно немного посчитать, и, к счастью, есть вычисление, которое мы можем использовать.

R – номинал резистора, необходимый для нашего светодиода, и для его расчета нам нужно знать напряжение питания. (Vs), прямое напряжение (Vf) и прямой ток (If) светодиода. Мы можем узнать Vf и If светодиода b, обратившись к его техническому описанию. Если нет, вот таблица приблизительных значений, которые можно использовать для обычных схем для любителей.

@top-advice.ru

gpio — Что такое подтягивающий резистор? Что оно делает? И зачем это нужно?

Я встречал много простых схем, которые показывают, как включить светодиод или что-то еще. Часто упоминаются подтягивающие резисторы. Что они делают? Для некоторых контактов GPIO требуются подтягивающие резисторы, а для других нет, в чем разница?

3

С веб-сайта Arduino:

Часто полезно перевести входной контакт в известное состояние, если вход отсутствует. Это можно сделать, добавив подтягивающий резистор (к +5 В) или подтягивающий резистор (резистор к земле) на входе, обычно 10 кОм.

НО : это с сайта Arduino. Помните, что контакты Raspberry GPIO рассчитаны только на 3,3 В и (поэтому на Raspberry Pi выполняйте подтяжку до 3,3 В, , а не 5 В)!!!

Вот пример схемы подтягивающего резистора.

Подтяжка гарантирует, что штифт поднят, не потребляя слишком много тока. Ворота имеют три возможных состояния: ON, OFF и FLOATING.

Состояние FLOATING не очень полезно, так как его нельзя преобразовать в логическое значение. Следовательно, подтягивающие и подтягивающие резисторы: они предназначены для устранения плавающего состояния.

2

Подтягивающий или подтягивающий резистор используется на входных контактах для определения состояния в случае, если к входу ничего не подключено или подключенная часть находится в состоянии высокого импеданса (Z). У входов без определенного состояния есть проблема, заключающаяся в том, что входное значение может быть любым (0 или 1), называемым плавающим.

Более подробно это объясняется в статье в Википедии (которую Дживингс добавил к комментариям к вашему вопросу) и немного более наглядно в этой статье на SparkFun.

1

Следует помнить (поначалу меня это немного смутило), что подтягивающий или подтягивающий резистор — это просто стандартный резистор, выполняющий определенную роль. Не один человек пытался купить подтягивающие резисторы только для того, чтобы обнаружить, что их не существует. В противном случае это так же, как это звучит, стандартный резистор, увеличивающий напряжение до 5 В / 3,3 В или до 0 В в нормальном состоянии.

1

Термин pull-up или pull-down — это термин, используемый для описания роли резистора. Он тянет сигнальную линию, к которой он подключен на одной клемме, к напряжению питания/земли/опорному напряжению, которое присутствует на другой клемме. Предыдущий ответ неверен, говоря, что «он увеличивает импеданс», а уменьшает сопротивление/импеданс в цепи, чтобы линия принимала известное состояние, когда она не будет иначе, например. входной контакт на интегральной схеме, который иначе не подключен. Так как это будет противодействовать эффектам, когда что-то внешнее подключен к величина сопротивления должна быть низкой достаточной для эффективного вытягивания если контакт случайно или преднамеренно оставлен разомкнутой цепью, но высоким достаточно, чтобы ни одна внешняя цепь не подвергалась чрезмерной нагрузке преодолеть эффект, когда он хочет вести линию в другом направлении.

Контакты GPIO на Pi имеют управляемые внутренние, которые, как я понимаю, в основном могут быть сделаны для того, чтобы линии предполагали логический низкий или высокий уровень или оставляли разомкнутую цепь — последнее из которых нормально, если пользователь предоставил потяните вверх/вниз резистор , чтобы выполнить работу (в любом случае, возможно, как часть внешней схемы). Конструкция последнего особенно важна, если внешняя цепь работает от шин питания выше 3,3 В, поскольку в этом случае подтягивающий элемент не должен пытаться поднять напряжение на линии выше 3,3 В. — последовательный резистор ( скажем, 4K7) и диод Шоттки (например, BAT85) с его анодом на стороне последовательного резистора, подключенного к контакту GPIO, и его катодом к шине питания 3,3 В — один из способов предотвратить это — низкий (<0,2 В) Прямое падение напряжения на диоде этого типа не позволяет поднять сигнальную линию достаточно высоко, чтобы повредить Pi, за счет немного увеличенного времени распространения сигналов в Pi.

Я только начинаю с Pi, так как вчера купил два подержанных {хотя я занимаюсь электроникой более 35 лет}, и я ищу информацию о распиновке Pi именно по этой причине. — и за лучшее место, чтобы получить два блока питания, поскольку они не поставлялись с ними. 8-P

Словарь по электронике определяет подтяжку следующим образом:

pull-up: описание используемой схемы или компонента. повысить значение (например, импеданс) цепи до которым он подключен.

Если светодиод подключен к источнику питания +5 В и управляется (включение и выключение светодиода) микроконтроллером/микропроцессором или каким-либо другим способом, во включенном состоянии источник питания может подавать большой ток, в свою очередь, большой ток может повредить светодиод.

К ограничивает большой ток от источника питания, подтягивающий резистор, подтягивает импеданс и ограничивает ток питания светодиода от источника питания (+5 В). Следовательно, светодиод защищен от больших токов. В зависимости от схемы функция подтягивания варьируется и формирует защиту проводной 9Логика 0085 И на шину I²C.

1

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания, политикой конфиденциальности и политикой использования файлов cookie

.

gpio — Как рассчитать сопротивление подтягивающего резистора

спросил

Изменено 2 года, 2 месяца назад

Просмотрено 470 раз

У меня есть вход 12 В, который я использую резистором 100k и 20k в качестве R1 и R2 соответственно в качестве делителя напряжения для подачи на вывод Raspberry Pi GPIO.

Когда сигнал 12 В отключен, я бы хотел поставить этот контакт на низкий уровень.

Кажется, я не совсем понимаю, как можно рассчитать необходимое для этого сопротивление.

Может кто-нибудь объяснить мне это?

Спасибо.

8

симуляция этой схемы – Схема создана с помощью CircuitLab

V

out = [ R2 ÷ (R1 + R2) ] × V in

для V в = 12V:

V OUT = 20K ÷ (100K + 20K) × 12

= (20 ∕ 120) × 12

= 2,01 0003

, когда V 33 3

= 2,010003

. = 0 В

В вых = 0 В

В качестве наглядного пособия рассмотрим следующее уравнение: « напряжение на резисторе равно , деленному на в том же отношении, что и значение этого резистора к общему сопротивлению. »


Немного алгебра , мы можем переписать приведенное выше, чтобы найти значение R2, необходимое для соответствия напряжению GPIO при 3,3 В:

R2 = (R1 × V

из ) ∕ (V из — V из )

R2 = (100K × 3,3) ∕ (12 — 3,3) = 37,9K𝛀

Поскольку 37,9K𝛀 не является стандартным резистором, и мы никогда не должны превышать 3,3В на выводе GPIO, мы должны выбрать GPIO. следующие меньшее значение : 33K𝛀.

Для более подробного объяснения. Чтобы получить это, требуется некоторое время — до действительно понял. Прочтите как можно больше, скачайте LTspice и смоделируйте несколько простых схем.

5

Вопрос

Как сдвинуть вниз сигнал 12 В постоянного тока для контакта 3V3 Rpi GPIO в режиме ввода?


Ответ

Существует несколько способов, описанных ниже:0042



(2) Использование OptoCoupler, такого как EL817C



Обсуждение, рекомендация и Warning

(1) 2n2222222222222222222222222222. 5V0. Однако его также можно использовать для смещения сигнала вниз, например, в данном случае с 12 В до 3 В 3 или 5 В 0.

(2) Для условий применения OP, таких как автомобильное зажигание, с сильными шумовыми скачками напряжения, пиками и шумами, настоятельно рекомендуется интерфейс оптопары.

(3) Для понижающего переключателя, использующего делитель напряжения или 2N2222, существует риск «защелкивания» ( см. ссылку (1), Приложение D ниже ), что может привести к повреждению контакта GPIO или Rpi, поэтому использование подхода с оптопарой может уменьшить риск защелкивания.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *