Перейти к содержанию
    

Состояние выводов при старте

Всем день добрый.

Растолкуйте, пожалуйста, как ведут себя выводы контроллера от момента подачи питания до инициализации портов в программе:

- вход с высоким входным сопротивлением;

- вход с подтяжкой внутренним резистором к +5V или GND;

- выход находящийся в состоянии 0 или 1.

Контроллер 16F874. Укажите на описание интересующего меня вопроса в даташите.

Жизнь столкнула со схемотехникой сырого прибора, с пиками до этого не работал, только атмелы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость @Ark
Всем день добрый.

Растолкуйте, пожалуйста, как ведут себя выводы контроллера от момента подачи питания до инициализации портов в программе...

От момента подачи питания до старта программы - это состояние сброса: все выводы в "третьем" (высокоомном) состоянии и все подтяжки выключены (в ДШ не нашел, это из опыта).

С момента старта программы (выход из сброса) до программной установки - аналогично! Смотреть состояние регистров после POR (сброса по включению питания) - TRIS и OPTION_REG.

По этой причине, во избежание ненужных эффектов, лучше подтягивать внешними резисторами к нужному уровню не только входы, но и выходы. Там, где это необходимо. Например, стоит подтянуть к питанию как вывод приемника, так и вывод передатчика UART. Иначе может выдавать "мусор" в линию при включении питания...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.

То-то наблюдались периодически "дымовые" эффекты при включениях. Базы транзисторов управления "мощными" ключами не были подтянуты никуда, только резистор в цепь базы от контроллера.

Изменено пользователем bbill

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость @Ark
То-то наблюдались периодически "дымовые" эффекты при включениях...

Кстати, насчет "дымовых" эффектов. Посмотрите по программе момент переключения портов на выход. Если управляете мощными ключами, то нужно сначала записать в порт (в "защелки") нужные значения, а уже потом переключать на выход. Так как, при переключении, по значению "защелок" устанавливается состояние выходов. Если у Вас какая-нибудь мостовая схема, то можете случайно открыть все транзисторы одновременно и "зашунтировать" питание...

Удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Слава богу, мостов нет. "Мощные" ключи - полевики до 10А.

Программера что писал и ваял, тоже нет.

Буду разбираться. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Состояние портов после сброса по питанию определяется состоянием регистра TRIS, а он определен как вход, по даташиту. Подтягивающие резисторы, по биту RBPU, отключены (после сброса он в 1 регистр OPTION). Инициализацию обычно производят сразу в начале программы так, что после старта это микросекунды. Следовательно дым скорее всего по другим причинам полевые ключи при высоком импедансе управляющего выхода чаще всего не меняют своего предыдущего состояния. Дым это нагрев а на это надо относительно большое время короткие всплески это обычно хлопок и дырка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость @Ark
Инициализацию обычно производят сразу в начале программы так, что после старта это микросекунды...

От старта программы до инициализации, обычно, да - микросекунды. Но от подачи питания до старта программы может быть несколько большее время - уже миллисекунды в некоторых случаях. И все это время (до инициализации) "выходы" будут "входами", и без внешних "подтяжек" будут свободно болтаться "в воздухе"...

Кроме того, если нет внешних "подтяжек", то незакрытые силовые ключи, коммутирующие большую нагрузку, могут дать значительное снижение скорости нарастания напряжения питания. Из-за этого PIC может просто не стартовать (зависнуть). Тогда закрыть ключи будет уже некому...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Совершенно согласен с Вами, @Ark, но это уже недостатки схемотехники, а их иногда невозможно исправить программой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В изделиях построенных с применением MCU имеется один "недостаток" - взаимодействие схемы и программы. Поэтому недочет в одном из составляющих вызывает проблемы. Хорошо, когда изделие свое и знаешь, какие мины сам себе пытался заложить :)

Здесь, в приборе, коммутируется на короткое время (5 и 10 мсек) на маломощной нагрузке до 10А(ну так надо), с очень большой скважностью(минуты). Поэтому средняя мощность никакая. Но при продолжительном включении, дым обеспечен.

Не знаю еще как в пиках, в аврках от подачи питания до старта программы может быть и 4, и 64 мсек. Провожу аналогию.

Тем более, что один из транзисторов, который управлял полевиком(согласование уровней 5/12 В), по базе никуда не был притянут. При подаче питания его состояние определялось "наличием туч на небе" :biggrin:

Спасибо за консультацию, читаю даташит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...