Страница 1 из 8
Получение состояния пина при определённом входном напряжении
Добавлено: Вт окт 08, 2019 21:32:24
SerAl
Подскажите пожалуйста как проще реализовать следующее:
Пин МК (не более 5 Вольт) должен быть в HIGH если входящее напряжение больше определенного.
Т.е. хочу убрать некие скачки напряжения к примеру от 0 до 7 Вольт.
Если на входе от 0 до 7 Вольт, то на пине МК LOW, если от 7 до 15 HIGH
Re: Получение состояния пина при определённом входном напряж
Добавлено: Вт окт 08, 2019 21:44:50
roman.com
самое простое - с помощью делителя
Re: Получение состояния пина при определённом входном напряж
Добавлено: Вт окт 08, 2019 21:48:42
SerAl

Вот, к примеру, вариант.
Нужно обеспечить оптрон током,примерно, 10мА.
Как правильно подобрать R1 ?
Добавлено after 1 minute 32 seconds:
[uquote="roman.com",url="/forum/viewtopic.php?p=3714958#p3714958"]самое простое - с помощью делителя[/uquote]
Делитель - это хорошо, подобрал под минимальный уровень HIGH контроллера и в путь.
А если скачек напряжения пин или МК эможет выйти из строя, поэтому хочется иметь и защиту от этого.
Оптрон не так важен, он как дополнительная защита МК.
Эта конструкция будет подключена к сигнальному проводу генератора авто, при заглушенной машине там бывает 1-6 Вольт, поэтому хочу отсечь ненужное напряжение до 7 Вольт.
Или использовать компаратор...?
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 07:14:35
mickbell
Оптрон лучше. Стабилитрон не нужен, его светодиод и сам по себе имеет пороговые свойства, вполне можно рассчитывать на них. Номиналы делителя: входной 6.2 кОм, параллельно светодиоду 1.2 кОм.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 09:01:51
InvisibleKid
[uquote="SerAl",url="/forum/viewtopic.php?p=3714959#p3714959"]Делитель - это хорошо, подобрал под минимальный уровень HIGH контроллера и в путь.
А если скачек напряжения пин или МК эможет выйти из строя, поэтому хочется иметь и защиту от этого.[/uquote]
Значит сначала делитель, а перед самим пином МК стабилитрон на 5 или 5,1 В на землю. Он не даст бОльшему напряжению попасть на вход МК. Нужно только что бы резисторы в делителе были подобраны с таким сопротивлением, что бы максимальное возможное напряжение с генератора не приводило к прохождению через стабилитрон тока большего, чем его предельно допустимый ток, уменьшенный на коэффициент запаса (можно взять 1,5-2). Как это всё расчитывать - ознакомьтесь внимательно с принципом действия параметрического стабилизатора и его расчетом.
Кроме стабилитрона есть еще один хороший вариант защиты, он, в принципе, дублирует схему, реализованную в самом МК: подключаем один диод катодом к линии Vcc (+5В которая), анодом к защищаемому входу. Второй диод подключаем анодом к GND а катодом к защищаемому входу. Как это работает: Если сигнал на входе окажется более чем на 0,6В больше чем напряжение питания МК или на 0,6В менее чем напряжение "земли", то эти диоды зашунтируют вход микроконтроллера. Опять же, резисторы в делители должны ограничить максимальный ток для этих диодов на входе при прохождении максимального импульса.
Советую так же ознакомиться вот с этими ссылками:
https://cxem.net/beginner/beginner102.php
http://chipenable.ru/index.php/files-codevision/97.html
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 10:31:39
SerAl
Имеет место быть такая схема?
R4 10k нормально или меньше нужно?
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 10:38:02
SSkot
[uquote="SerAl",url="/forum/viewtopic.php?p=3714954#p3714954"]Если на входе от 0 до 7 Вольт, то на пине МК LOW, если от 7 до 15 HIGH[/uquote]
преобразователь уровней на компараторе.
можно с небольшим гистерезисом, либо программно подавить возможный "дребезг"
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 11:08:06
mickbell
Там воробьи, тут пушка.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 11:33:48
InvisibleKid
Да не нужен тут компоратор по идее, правильная же была мысль, подобрать делитель так что бы, так сказать, "холостое" напряжение с выхода гены было бы заведомо ниже чем логическая единица у микроконтроллера. Вход микроконтроллера сам по себе компаратор, надо только напряжение масштабировать и ограничить если оно слишком большое.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 17:16:02
El-Eng
Использовать порог переключения логического входа МК не очень хорошо из-за разброса и зависимости от напряжения питания. Кроме того, логические микросхемы не любят входные напряжения возле порога переключения. В составе МК, как правило, имеется компаратор ко второму входу которого можно программно подключить встроенный источник опорного напряжения. Для защиты от перенапряжения на входе, в случае достаточно высокоомного делителя, хватит стандартной защиты, имеющейся в МК. Если хочется подстраховаться, можно поставить обратно смещенный маломощный диод Шоттки между входом и плюсом питания. Так схема сводится к паре резисторов и диоду. Если быстродействие не очень нужно, можно добавить конденсатор между входом и землей для защиты от влияния помех.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 18:49:17
SerAl
А что скажите по моей схеме с компаратором? 4 входа, стоит копейки. Всё так нарисовал?
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 18:51:02
ПростоНуб
SerAl, 555-й таймер включенный, как триггер Шмитта. На выходе его резистор 10К на вход МК и стабилитрон от 3.3 до 5В на землю от входа МК.
Компаратор может переключаться многократно при напряжении близком к его порогу срабатыванию. Триггер Шмитта тут явно лучше.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 19:07:51
SerAl
Мне нужно 4 входа, об этом не сказал ранее, 4 штуки 555 это много места на плате
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 19:20:13
ПростоНуб
SerAl, тогда одна К561ТЛ1/CD4093, если инвертирование не смущает.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Ср окт 09, 2019 21:10:33
El-Eng
SerAl писал(а):А что скажите по моей схеме с компаратором? 4 входа, стоит копейки.
Если у вас два источника 5 и 12В, и стабильности 5В хватит, то можно запитать LM2901 12В, как на схеме, а 5В подключить к инвертирующим входам в качестве опоры. Если есть только 5В, то все инвертирующие входы нужно подключить к опорному напряжению порядка 1-3В, в качестве которого может быть опора МК, внешний источник (хорошо подойдет TL431) или, на худой конец, делитель напряжения питания. Делители на неинвертирующих входах нужно пересчитать. В обоих случаях есть смысл добавить небольшой гистерезис.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Чт окт 10, 2019 05:53:06
InvisibleKid
[uquote="El-Eng",url="/forum/viewtopic.php?p=3715358#p3715358"]Использовать порог переключения логического входа МК не очень хорошо из-за разброса и зависимости от напряжения питания. Кроме того, логические микросхемы не любят входные напряжения возле порога переключения.[/uquote]
Это все решается подбором напряжения заведомо ниже порога переключения. Если речь идет о единичном экземпляре, то можно и отладить и подстроить, сомневаюсь что автор будет серийное производство открывать где разброс параметров действительно может быть важен.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Чт окт 10, 2019 08:13:04
El-Eng
InvisibleKid писал(а):Если речь идет о единичном экземпляре, то можно и отладить и подстроить...
Я, все же, советую выбирать такие решения, которые учитывают разброс покупаемых компонентов и, по возможности, не требуют подстройки или отладки (ну, или самый минимум). Так, чтобы при правильном монтаже все начинало работать сразу.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Чт окт 10, 2019 08:51:05
ПростоНуб
InvisibleKid, зачем? Даже на операционнике тут проще делать триггер Шмитта, совершенно не беспокоясь потом о спонтанных переключениях и используя хоть 20% резисторы без подбора.
Re: Получение состояния пина при определённом входном напряж
Добавлено: Чт окт 10, 2019 10:19:46
InvisibleKid
ПростоНуб, просто стремление обойтись минимумом деталей который обычно есть и нежелание идти в магазин за непонятными компараторами.
Еще такая мысль пришла в голову:

Только выход будет с инверсией, но это не проблема если речь идет о микроконтроллере. Номиналом стабилитрона регулируется напряжение переключения (не забываем 0,6В падения напряжения на эмиттерном переходе)
Re: Получение состояния пина при определённом входном напряж
Добавлено: Чт окт 10, 2019 10:33:23
Vovan555
стремление обойтись минимумом деталей который обычно есть и нежелание идти в магазин
Можете ругаться, но от подобного желания обойтись минимумом, из того, что есть, обычно, колхоз получается. Т.е., мягко говоря, работать, может и будет, но не так, как хотелось-бы.