10.08.2016, 20:20
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,672
Сказал спасибо: 74
Сказали Спасибо 1,806 раз(а) в 654 сообщении(ях)
|
Re: выгорает пин
Сообщение от Albert_V
|
Сейчас уже не вспомню в каком документе от Microсhip-а видел, что после запрета прерываний, можно при выполнении следующей команды получить вызов по INT.
|
Любопытно было бы глянуть... Это значит, тогда после каждого запрета прерываний есть вероятность сразу же уйти в прерывание? А с возвратом из прерывания по retfie тогда как быть? Она-ж прерывания разрешит обратно..
Но, скорее всего, Вы спутали с командой sleep. Если используется пробуждение из сна по прерыванию, и бит GIE установлен, тогда действительно - после команды sleep должна следовать команда nop (одна, две не обязательно). Связано это с тем, что при выполнении команды одновременно происходит предвыборка следующей команды (установка счётчика на следующий адрес), в таком состоянии МК и "засыпает". Поэтому, при пробуждении первой выполнится команда, следующая сразу же за sleep, а уже затем - переход по вектору прерывания.
..
Последний раз редактировалось RECTO; 10.08.2016 в 20:24.
|
|
|
|
10.08.2016, 20:33
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: выгорает пин
RECTO, скорее всего, вы правы.
Возможно я что-то не так когда-то понял, но я знаю точно, что с парой NOP-ов после запрета прерываний, работает гарантированно.
Другое дело, зачем вообще такая команда "из вне" потребовалась....
Если контроллер перестал отвечать на запросы - он и эту команду не поймёт.
|
|
|
|
10.08.2016, 20:39
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: выгорает пин
А мне вот чота кажется, что дело не в разрешенных прерываниях... Тут что-то где-то похуже. Запрет прерываний - эт мне кажется только заплатка...
Поскольку пин настроен как вход, то разрешенные прерывания в принципе то и не могут (не должны мочь, если по уму) повлиять на смену режима. Ведь в нормальном режиме ни одна функция в любом прерывании не должна вовсе обращаться к настройке входов-выходов, используемых модулем USART.
Сама инициализация МК должна быть написана с учетом реинициализации, то есть с выполнением действий, которые обычно не нужно делать при аппаратном сбросе МК. То есть, инициализация в первых строках должна запрещать прерывания, сбрасывать регистры к состоянию reset. Лучше всего конечно было бы сделать "аппаратный самосброс" через обратную цепочку от свободного выхода и на вход reset. То есть по примеру дискретных двоичных счетчиков, сбрасывающихся при определенной комбинации на выходе.
Сообщение от Albert_V
|
зачем вообще такая команда "из вне" потребовалась....
|
Реинициализация, возврат первоначального состояния исполнительных узлов. Это не от зависания МК конечно..
Последний раз редактировалось NewWriter; 10.08.2016 в 20:44.
|
|
|
|
10.08.2016, 20:44
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: выгорает пин
NewWriter, тут может быть что угодно.
Как на уровне последовательности команд выглядит Init у ТС - фиг его знает....
Сообщение от NewWriter
|
Реинициализация, возврат первоначального состояния исполнительных узлов. Это не от зависания МК конечно..
|
Тогда зачем делать goto 0?
Неужели сложно отработать эту команду программно, без Reset-а контроллера и "доложить" Master-у о выполнении Init-а исполнительных узлов?
Последний раз редактировалось Albert_V; 10.08.2016 в 21:01.
|
|
|
|
10.08.2016, 20:53
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: выгорает пин
Что вы тут херню городите? Причём здесь инит? Правильный он, не правильный, это никак на вылет пина не влияет, у пина присутствует ограничение по току, если пин настроен на вывод. Если же пин настроен на ввод, то убить его можно только высоким входным напряжением. Вас автор троллит, а вы и ведётесь.
|
|
|
|
10.08.2016, 23:13
|
|
Прописка
Регистрация: 09.08.2006
Адрес: Днепр
Сообщений: 59
Сказал спасибо: 21
Сказали Спасибо 34 раз(а) в 14 сообщении(ях)
|
Re: выгорает пин
В этой схеме еще одна потенциальная проблема - при подаче питания драйвер висит как передатчик и садит линию. Резистор 10К с выводов RE-DE надо к VDD подтянуть, а не к земле - сам попадался, драйвер раскаляется и вылетает.
|
|
|
Сказали "Спасибо" nocturnus
|
|
|
10.08.2016, 23:20
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: выгорает пин
Мдаа...
Документацию читать уже религия не позволяет...
|
|
|
|
10.08.2016, 23:49
|
|
Прописка
Регистрация: 09.08.2006
Адрес: Днепр
Сообщений: 59
Сказал спасибо: 21
Сказали Спасибо 34 раз(а) в 14 сообщении(ях)
|
Re: выгорает пин
Кстати, с 628А у меня именно из за подтяжек затык и вышел - программная часть завелась сразу без всяких нопов - писал еще тогда на асме. Если 2 передатчика висят на линии в режиме передачи, то они совместно начинали генерить что-то типа меандра на выходах RO
|
|
|
|
10.08.2016, 23:50
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,987
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
|
Re: выгорает пин
yellow87,
а каким тестом проверен вывод пика и сделан вывод о неисправности?
|
|
|
|
11.08.2016, 00:04
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
|
Re: выгорает пин
Сообщение от nocturnus
|
Резистор 10К с выводов RE-DE надо к VDD подтянуть, а не к земле
|
Чтобы на передачу поставить? А занахуа?
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:11.
|
|