[an error occurred while processing this directive] [an error occurred while processing this directive]
Нарывался на похожие проблемы..
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Baser 20 апреля 2002 г. 14:23
В ответ на: Кстати, может не к месту(страничка может кончится), но интересный глюк в PIC-ах(+) отправлено Анатоль 20 апреля 2002 г. 01:33

PIC16F877 c подпрограммой часов просыпался не только по прерыванию от TMR1, но и от чего-то другого. Все другие прерывания запрещались и все другие флаги сбрасывались и до и после SLEEPа.
Правда это проявлялось только при дерганьи питания (переключении с главного питания на батарейку и обратно).
Поборол это проверкой после SLEEPа флага TMR1IF, и при его отсутствии отправлением ПИКа обратно в SLEEP.

p.s.Сама процедурка отправки в SLEEP была след.(см.даташеет, там масса ньюансов!):

CLRWDT();
do { SLEEP(); NOP(); } while (PD);
CLRWDT(); // Wake-Up from Sleep

p.p.s. ЁёёёёЁЁЁЁЁ:))

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru