|
Как быть с подтяжкой при сбросе на LPC17xx? |
|
|
|
May 3 2013, 10:39
|
Участник

Группа: Участник
Сообщений: 23
Регистрация: 3-05-13
Пользователь №: 76 718

|
Привет. В микроконтроллерах LPC17xx по умолчанию после сброса пины конфигурируются как входы с подтяжкой к питанию. После старта программы все понятно - переконфигурируем как надо и все OK. Но как быть в моменты программирования, сброса, включения когда пины еще не проинициализированы? Допустим я управляю затвором MOSFETа с помощью GPIO МК, который управляет реле (ну, в принципе, не важно какой-то нагрузкой) мне нужно, чтобы реле никогда не включалось, когда это не нужно. Как лучше поступить? В голове такие варианты, покритикуйте какой лучше или посоветуйте другие: 1) подтягиваем пин к земле внешним резистором 10 кОм. Хватит ли этих 10 кОм? Мин. порог отркытия MOSFET-а 0.5В. 2) наоборот, подтягиваем пин внешним резистором 10 кОм к питанию 3.3В, после пина ставим инвертор и в программе используем инверсное управление.
Сообщение отредактировал Rev0.0 - May 3 2013, 10:43
|
|
|
|
|
 |
Ответов
(1 - 7)
|
May 3 2013, 13:59
|
self made
   
Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795

|
Цитата(Сергей Борщ @ May 3 2013, 06:32)  Я ходил по пути 1. Но использовал резистор 1К. Если этот номинал не годится из соображений потребления - я бы подумал о смене производителя контроллера на того, кто не заставляет так извращаться. Да не сильно большое извращение. Вариантов масса, можно биполярный транзистор, например, поставить, вместо или перед мосфетом. Он от подтяжки не откроется.
|
|
|
|
|
May 4 2013, 08:02
|
Участник

Группа: Участник
Сообщений: 23
Регистрация: 3-05-13
Пользователь №: 76 718

|
А второй способ чем плох если не учитывать, что нужно дополнительный элемент - инвертор - вводить? И потребление поменьше будет.
|
|
|
|
|
May 4 2013, 20:47
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (Rev0.0 @ May 4 2013, 11:02)  если не учитывать, что нужно дополнительный элемент - инвертор - вводить? Да собственно именно этим - место на плате, неудобство в разводке, цена за кристалл и его монтаж. И все это только из-за того, что кто-то в NXP решил, что "подтяжки - это будет хорошо". Помнится, аналогичным страдал Атмел.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
May 5 2013, 04:40
|
Участник

Группа: Участник
Сообщений: 23
Регистрация: 3-05-13
Пользователь №: 76 718

|
Хорошо, с инверторами понятно. Как тогда посчитать достаточное значение резистора подтяжки, чтобы при этом транзистор с порогом 0.5В не открылся, но в то же время максимально большое, чтобы сильно не увеличилось энергопотребление. При включении, когда пины не инициализированы напряжение составляет около 2,2 В (измерял мультиметром). В даташите указан pull-up current в диапазоне от -15 до -85 мкА. Как на основе этих данных посчитать значение резистора и вообще можно ли посчитать или только опытным путем?
|
|
|
|
|
May 5 2013, 07:49
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
QUOTE В даташите указан pull-up current в диапазоне от -15 до -85 мкА. Как на основе этих данных посчитать значение резистора и вообще можно ли посчитать или только опытным путем? Не поверите. Закон Ома. Например, при резисторе в 1кОм напряжение нуля будет не более 85мВ. QUOTE В даташите указан pull-up current в диапазоне от -15 до -85 мкА. Как на основе этих данных посчитать значение резистора и вообще можно ли посчитать или только опытным путем? Не поверите. Закон Ома. Например, при резисторе в 1кОм напряжение нуля будет не более 85мВ.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
May 5 2013, 14:27
|
Участник

Группа: Участник
Сообщений: 23
Регистрация: 3-05-13
Пользователь №: 76 718

|
Цитата(Rst7 @ May 5 2013, 13:49)  Не поверите. Закон Ома. Например, при резисторе в 1кОм напряжение нуля будет не более 85мВ. Вот если бы так было, то здорово. Но вот при подтяжке 10 кОм у меня на мультиметре цифра 1.2В, а по Ому должно быть не более 0.85В. Причем 85 мкА это макс. значение, а типичное по даташиту 50 мкА. Где правда?
Сообщение отредактировал Rev0.0 - May 5 2013, 14:29
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|