Питание от пинов и ток между пинами
- Войдите на сайт для отправки комментариев
Чт, 21/11/2019 - 03:05
Это уже не столько вопрос, сколько хочу поделиться результатом эксперимента, который стал для меня неожиданностью. Допустим, была задача сделать генератор и пропускать ток через датчик туда-обратно. Для этого, контакты датчика подключались к пинам (допустим, 8 и 10). Питание на них включалось так:
pinMode(8, OUTPUT); digitalWrite(8, HIGH); pinMode(10, OUTPUT); digitalWrite(10, LOW);
Результат виден на скриншоте. Если минус подключить не к GND, а к пину со значением LOW, то тока проходит в два раза меньше. Кто-то знает из-за чего это происходит?
И еще мелкий нюанс, если кто вдруг не знает, к пину 13 подключён резистор и светодиод. Это не мешает ему пропускать максимум тока, но напряжение на его выходе падает. Этакий делитель напряжения.
И в завершение, к какому выводу всё-таки пришел. В датчиках, которым принципиально проводить ток в обе стороны питание будет от двух пинов (+ и - местами будет чередовать контроллер, создавая некое подобие переменного тока). Тем более мне там ток не важен, важно напряжение, а оно такое же, как если бы минус был подключен к GND.
В датчиках, где важен нормальный ток, от пина будет подаваться (включаться и отключаться) только плюсовое питание. Минус - будет стационарно на GND.
даташит почитай. Особенно, про максимальный ток пина в секции Absolute maximum ratings.
Всякий источник обладает какой-то номинальной, максимальной нагрузочной способностью, которая указывается его производителем. Превышение этих параметров ведет к отказу источника и выходы МК тут не исключение.
Так что сначала ознакомьтесь с параметрами своего МК, а уж потом что-то там проектируйте на счет питания датчиков.
Пока идете прямой дорогой, чтобы спалить проц или его пин.
Это происходит потому что используется какой-то детский мультяшный симулятор, не соответствующий реальности.
К пину 13 на уно подключен компаратор.
Если минус подключить не к GND, а к пину со значением LOW, то тока проходит в два раза меньше. Кто-то знает из-за чего это происходит?
Даже при токе 50 мА (а это уже на грани фола) падение на ключе будет 20х0,05=1 В.
Интересно, а где остальные 4 вольта упадут? На 80омном проводе?
Даже при токе 50 мА (а это уже на грани фола) падение на ключе будет 20х0,05=1 В.
Интересно, а где остальные 4 вольта упадут? На 80омном проводе?
У ТС нарисовано, что между двумя пинами течет ток 50 мА. Значит нагрузка около 60 Ом.
Резюмируя, приведу еще один более правильный и наглядный рисунок. Используется резистор 2КОм. Три вида подключения: VCC - GND (при 5В получаем 2,5мА), пин(12) - GND, пин(8 HIGH) - пин(10 LOW) получаем неожиданно меньший ток. Мой датчик оказался чувствителен к этой практически не заметной разнице 2,5мА - 2.35мА. Кто бы мок подумать, что вот те 20 Ом сопротивления самого пина (я, про это не знал но теперь думаю, что там больше чем 20) спровоцируют написание целой темы на форуме :)
Даже при токе 50 мА (а это уже на грани фола) падение на ключе будет 20х0,05=1 В.
Интересно, а где остальные 4 вольта упадут? На 80омном проводе?
У ТС нарисовано, что между двумя пинами течет ток 50 мА. Значит нагрузка около 60 Ом.
Значит? А ничего, что на схеме НЕТ НИКАКОЙ нагрузки?
Скорее всего в этом и вся собака зарыта, что каждый OUTPUT всё-таки имеет небольшое сопротивление, коего не имеют пины VCC и GND.
Сопротивление, разумеется, имеют совершенно все элементы. Но оно далеко не такое, как нарисовано тут. Достаточно открыть даташит и сравнить табличные данные с этой картинкой, чтобы увидеть огромную разницу. Это просто дерьмовый симулятор.
Хиленькие какие-то у вас ардуинки - всего 100 мА. У меня круче, до 250 мА может выдать )))
Сколько раз уже в этой теме назвали точный источник такой информации?
Значит? А ничего, что на схеме НЕТ НИКАКОЙ нагрузки?
А где Вы видели схему? Это наскальный рисунок и автор, показывая нам ток, что-то там себе "подразумевает".
Ну держите в завершение еще и наскальную фотку. Тему назвал "питание от пина" и показал, что не всё там аналогично, как питание от VCC. Знающие люди уже подсказали, что это из-за того, что на пинах есть небольшое, но сопротивление. Сам я этого не замечал пока не столкнулся с датчиком для которого принципиально: подают на него 3.15В или 3.04В.
Теперь всё прояснилось. Всем спасибо. Дальше уже меряемся, какой эмулятор лучше. Меня тинкеркад устраивает, но в нем, к примеру, нет мультиплексоров (например CD4051). Это пичалька.
Ну держите в завершение еще и наскальную фотку. Тему назвал "питание от пина" и показал, что не всё там аналогично, как питание от VCC.
Вообще то "пины" предназначены для выдачи логических сигналов, а не для питания датчиков. Но если вам хочется их использовать для питания, то надо не в эмуляторах смотреть, а открыть даташит. Там есть графики зависимости напряжения от нагрузки на пине. Так, напиример при Vcc 5В напряжение на пине падает с 5 до 3 с небольшим вольт при возрастании нагрузки от 0 до 50мА
Когда пытаюсь нагуглить что-то вида "падение напряжения на пине при нагрузке" попадаю на темы, аналогичные моей. Оказывается, не одного меня такое открытие посещает. А многих, у кого какие-то измерения чувствиельны к напряжению и вдруг оказывается, что от пина такое питание немного "гуляет".
На самом деле, своим первым постом я уже сразу ответ написал, что в данном случае, придётся отказаться от регулирования подачи питания чисто от пина. Это было бы просто, но это не подходит. Нужен или транзистор или, может, мультиплексор.
Сегодня если будет время, проэкспериментирую именно с мультиплексором. Чтобы был как в роли транзистора, только на большое количество датчиков. Как видите, решение вопроса "как запитаться от пина без потери тока" оказалось оригинальным: не делать этого, а с помощью пина только управлять питанием (реле, транзистор, мультиплексор...).
Последнее сообщение от asam меня уже окончательно в этом убедило. Что там (у каждого пина) не просто 20 Ом сопротивления, а оно еще и изменяться будет при изменении нагрузки. Графиков этих зависимостей - не нашел.
Да, в мире есть много людей, хотящих странного. Особенно, у каво совсем не было курса радиотехники в гуманитарном Вузе.
Такое "открытие" посещает лишь тех кто ленится посмотреть даташит. Если нужн узнать сколько будет семью восем, то логичнее посмотреть в таблицу умножения, а не открывать дискуссию на форуме ближе это к 40-а или к 50-и
http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Mi...
Figure 29-10. I/O Pin Output Voltage versus Source Current (VCC = 5 V)
Доброго временни суток,
вопрос по поводу нагрузки на I/O Pins. Ардуино UNO можно до 40 mA на один пин нагружать, диодом там без опаски помигать... ))). А если взять к примеру Arduino Due, nodeMCU или MKR ZERO то тут и диодом можно выход поджарить, что в принципе логично, ибо I/O Pins для передачи информации предназначены. А что к примеру делать, если у меня имеется Arduino Due и передатчик для оптической передачи сигнала (по сути лазерный диод), который потребляет 30 mA? Чем чисто теоретически можно усилить сигнал, при том не потерять скорость передачи (в районе 5 MHz)?
Доброго временни суток,
вопрос по поводу нагрузки на I/O Pins. Ардуино UNO можно до 40 mA на один пин нагружать, диодом там без опаски помигать... ))). А если взять к примеру Arduino Due, nodeMCU или MKR ZERO то тут и диодом можно выход поджарить, что в принципе логично, ибо I/O Pins для передачи информации предназначены. А что к примеру делать, если у меня имеется Arduino Due и передатчик для оптической передачи сигнала (по сути лазерный диод), который потребляет 30 mA? Чем чисто теоретически можно усилить сигнал, при том не потерять скорость передачи (в районе 5 MHz)?
Любой источник напряжения имеет какое-то выходное сопротивление. Оно может быть вполне заметным (как у сигнальных пинов), близким к нулю (VCC) или (в некоторых специфических случаях) даже отрицательным.