Страница 1 из 1

Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 12:09:54
snetka
Добрый день!

Есть такая кнопка с подсветкой, при подключении подсветки к блоку питания 24В потребляет 6-7 мА. https://sl.aliexpress.ru/p?key=mm0FsFQ

После попытки управления этой подсветкой с помощью stm32f407 выводом в режиме open-drain сгорает этот вывод. Теперь в режиме open-drain в высоком состоянии на ножке есть потенциал 1.2 В, а она должна висеть в воздухе. После этого в режиме push-pull вывод работает нормально, правда не замерял потребление без нагрузки.

Вопрос, почему горит вывод? Согласно даташиту максимальная нагрузка на вывод составляет 20 мА, в режиме выхода сопротивление вывода близко к нулю, зачит ток должен быть такой же как и при подключении подсветки к БП, т.е. 6-7 мА. Почему горит вывод ? Если я допустил ошибку в расчетах, то как правлино расчитать допустимую нагрузку для работы в этом режиме?

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 12:20:43
Martian
я вот даже не знаю, что ответить... нехорошие слова просятся.

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

Посмотрите устройство порта в даташите, раз у Вас есть даташит. Потом подумайте, куда девается всё то, что работает, когда не open-drain mode


Удивительно, что не спалило весь микроконтроллер

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 12:39:05
HardWareMan
[uquote="snetka",url="/forum/viewtopic.php?p=4606594#p4606594"]Вопрос, почему горит вывод? Согласно даташиту максимальная нагрузка на вывод составляет 20 мА, в режиме выхода сопротивление вывода близко к нулю, зачит ток должен быть такой же как и при подключении подсветки к БП, т.е. 6-7 мА. Почему горит вывод ? Если я допустил ошибку в расчетах, то как правлино расчитать допустимую нагрузку для работы в этом режиме?[/uquote]
Т.е., вы эту табличку посмотрели:
Изображение
А эту предусмотрительно игнорировали:
Изображение
Я всё правильно понял? Это помимо объяснений Martian.

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 13:28:57
snetka
Спойлер[uquote="HardWareMan",url="/forum/viewtopic.php?p=4606605#p4606605"][uquote="snetka",url="/forum/viewtopic.php?p=4606594#p4606594"]Вопрос, почему горит вывод? Согласно даташиту максимальная нагрузка на вывод составляет 20 мА, в режиме выхода сопротивление вывода близко к нулю, зачит ток должен быть такой же как и при подключении подсветки к БП, т.е. 6-7 мА. Почему горит вывод ? Если я допустил ошибку в расчетах, то как правлино расчитать допустимую нагрузку для работы в этом режиме?[/uquote]
Т.е., вы эту табличку посмотрели:
Изображение
А эту предусмотрительно игнорировали:
Изображение
Я всё правильно понял? Это помимо объяснений Martian.[/uquote]
Что вы хотите показать в этой таблице? Максимальное значение напряжения на ножке? Так я ведь не напрямую подал 24 вольта, а через светодиод и защитный резистор. Диод с резистором имеют сопротивление примерно 4 кОм, внутреннее сопротивление порта в режиме выхода мало, допустим 1 Ом. Получается делитель напряжения с коэффициентом 1/4001, при питании 24 В на ножке должно быть напряжение 24/4001 В, что гораздо меньше предельных значений

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 13:36:42
Martian
а когда порт выключен, тогда какое его сопротивление и какое напряжение на ножке?
и ещё раз: что ещё, помимо транзистора нижнего плеча, висит на ножке этого порта внутри микроконтроллера? Нет никаких соображений?

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 14:24:35
snetka
[uquote="Martian",url="/forum/viewtopic.php?p=4606637#p4606637"]а когда порт выключен, тогда какое его сопротивление и какое напряжение на ножке?
и ещё раз: что ещё, помимо транзистора нижнего плеча, висит на ножке этого порта внутри микроконтроллера? Нет никаких соображений?[/uquote]

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

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

Перед самым выходом стоит защитный диод притянутый к линии питания, ток пойдет через него и он сгорит, потом на ножке будет большое сопротивление из того что я перечислил выше порядка нескольких МОм. Если бы нагрузка была линейной 4000 Ом, то на ножке было бы почти 24 вольта, что превышает допустимые параметры. В случае со светодиодом с таким получившимся токоограничивающим резистором в несколько МОм его сопротивление также возрастет до МОм, напряжение на ножке будет зависеть от получившегося плеча из мегаомного сопротивления порта и мегаомного сопротивления светодиода, но ток в любом случае будет несколько мкА

Правильно рассуждаю?

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 14:41:15
Martian
Не знаю. Я даже не возьмусь всё просчитывать. На микроконтроллер придет 24 вольта, с учетом в цепи нагрузки, ток может быть равный ей, то есть до 6-7 мА. Бродить будет по всему микроконтроллеру.

Re: Горит порт GPIO при подключении нагрузки 6 мА

Добавлено: Чт июл 25, 2024 17:24:25
Martin76
Глупо рассчитывать подавая на выход МК 24 В через резистор и светодиод , что МК обязан выжить при этом. Для таких целей есть включение транзисторов с ОБ / ОЗ. Либо проще ключ на н или нпн.