|
Программа уходит в мир иной, PIC16F877A |
|
|
|
Aug 7 2008, 19:40
|
Группа: Новичок
Сообщений: 8
Регистрация: 9-04-08
Пользователь №: 36 618

|
Господа у меня такая проблема. Включаю питание, и..... полностью стирается программа, включая данные и бит конфигурации. А вот если снять джемпер по плюсу питания, затем включить сам блок, затем поставить джемпер (перемычку) на место-- все работает. Очевидно что программу сносит какие-то переходные процессы при включении (блок питания импульсный). Вопрос как защититься от этих самых помех? У кого какие соображения? Помогите советом. Спасибо.
|
|
|
|
|
 |
Ответов
(1 - 10)
|
Aug 7 2008, 20:32
|
Частый гость
 
Группа: Участник
Сообщений: 104
Регистрация: 21-12-06
Пользователь №: 23 770

|
Что-то есть у меня сомнения, что программа стирается при включении. Сколько возился с такими контроллерами, подобного не было. Посмотрите осциллом, что происходит при включении на линиях питания, общих шинах, выводах, используемых для программирования (для 16F877 это RB6 и RB7, если я не ошибаюсь). Попоробуйте запитать блок не от импульсного источника. Возьмите другой чип. Как защищаться от помех...конденсаторы по питанию в первом приближении...Покажите схему, что-ли, и рисунок платы.
P.S. А что, контроллер питается от источника напрямую? Без промежуточных линейных стабилизаторов?
--------------------
Затравленный и прижатый к стене кот превращается в тигра. Мигель Сервантес.
|
|
|
|
|
Aug 7 2008, 22:10
|
Группа: Новичок
Сообщений: 8
Регистрация: 9-04-08
Пользователь №: 36 618

|
Да собственно у меня тоже такое впервые. Схема проста, на выходе вторичной обмотки трансформатора (7кГц) включен диод шотки, далее кондер 4,7 мкф стабилизатор L78L05AB и снова кондер 4,7 мкф и еще один кондер 0,1 вот собственно и все. Самое интересное что на макетной плате все работало. Единственное отличие это то, что конденсатор после стабилизатора стоял 1мкф, поменять обратно проблемно, поскольку Пик в корпусе 44-pin TQFP и уже залит эпоксидкой  Доступен только 5-ти штырьковый разъем для программирования. Странно все это как то: прошиваю-считываю все замечательно, включаю импульсник- ставлю перемычку(подаю питание на Пик) все работает! Далее включаю при установленной перемычке- не работает-считываю везде 'F' ПУСТО!!! Снова прошиваю ...... Пробовал с бубном вокруг бегать не помогает P.S. Как грамотно повесить вывод MCLR на плюс? У меня так: на MCLR подается плюс через резистор 10к, параллельно которому включен диод, катодом к плюсу и в завершении непосредственно на MCLR висит кондер 0,1 вторым выводом на общий (зачем диод не знаю, где то в журнале высмотрел)
|
|
|
|
|
Aug 7 2008, 22:51
|
Частый гость
 
Группа: Участник
Сообщений: 104
Регистрация: 21-12-06
Пользователь №: 23 770

|
Цитата Пробовал с бубном вокруг бегать не помогает Бубен маленький...надо больше... Цитата на выходе вторичной обмотки трансформатора (7кГц) включен диод шотки, далее кондер 4,7 мкф стабилизатор L78L05AB и снова кондер 4,7 мкф и еще один кондер 0,1 вот собственно и все Если я правильно понял, то "вторичная обмотка трансформатора" и "диод шотки" и есть выход с импульсника (ну и конденсатор). Маловат конденсатор для выхода импульсного источника. Если он не на единицы миллиампер, то меньше чем 47 мкф я бы не ставил. Цитата уже залит эпоксидкой Это плохо... Быстрый обзор приложенного файла подтвердил мои подозрения  о наличии алгоритма стирания. Посему в вероятность стирания программы таким образом я верю мало... В доках на контроллер написано, что наличие отрицательного напряжения на MCLR может вызвать триггерный эффект. Может в этом дело. Зачем диод на MCLR я тоже не понял. Попробуйте его замкнуть. Это первое. И все-таки, посмотрите питание и сигналы на доступных выводах осциллографом. Добавить 0,1 мкф конденсаторы на все выводы питания(У 16F877 в TQPF их 2).
Прикрепленные файлы
39589b.pdf ( 353.04 килобайт )
Кол-во скачиваний: 57
--------------------
Затравленный и прижатый к стене кот превращается в тигра. Мигель Сервантес.
|
|
|
|
|
Aug 8 2008, 14:44
|
Группа: Новичок
Сообщений: 8
Регистрация: 9-04-08
Пользователь №: 36 618

|
Спапибище! Вы правы. На входе MCLR импульс аж 21 вольт! К тому же RB7 и RB6 в воздухе, я же их использую при программировании! Хотя в проге я их и не использую. Вероятная причина найдена, теперь буду думать, как ее придушить. Всем Спасибо!
|
|
|
|
|
Aug 8 2008, 22:01
|
Частый гость
 
Группа: Участник
Сообщений: 104
Регистрация: 21-12-06
Пользователь №: 23 770

|
Цитата На входе MCLR импульс аж 21 вольт! К тому же RB7 и RB6 в воздухе, я же их использую при программировании! Хотя в проге я их и не использую. Вероятная причина найдена, теперь буду думать, как ее придушить. А откуда берется на MCLR импульс в 21 В если там перед ней линейный стабилизатор ? Или что-то в схеме не то, либо что-то не договариваете Цитата Чтобы разрядить конденсатор на MCLR при выключении питания (проанализируйте схему при Vcc 5в->0в). Возможно да, для этого (Проглядел, что конденсатор включен напрямую на вывод MCLR  )
Сообщение отредактировал Wildcat - Aug 8 2008, 22:02
--------------------
Затравленный и прижатый к стене кот превращается в тигра. Мигель Сервантес.
|
|
|
|
|
Aug 9 2008, 19:04
|
Частый гость
 
Группа: Участник
Сообщений: 104
Регистрация: 21-12-06
Пользователь №: 23 770

|
Цитата(Сергей Борщ @ Aug 9 2008, 12:04)  Попробуйте без этого диода выключить и сразу же включить питание. Емкость останется заряженой, низкого уровня на RESET не получится, программа не сбросится. Попробую как нибудь Я для надежного сброса супервизор по питанию ставлю.
--------------------
Затравленный и прижатый к стене кот превращается в тигра. Мигель Сервантес.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|