Argon (07.06.2011 13:21 - 13:31, просмотров: 84) ответил Argon на Ну дык надо слегка пар выпустить. Коллег вокруг меня нет, только на сахаре. В предыдущем добавил.
впрочем, оказалось, причина не в VICVectAddr=0, а в совпадении VICIntEnClear = (1<<15) и одновременно срабатывающего прерывания EINT1. Кто объяснит, почему в этом случае происходит сброс/переход на 0?
А если сделать вот так:
__disable_interrupt();
VICIntEnClear = (1<<15);
__enable_interrupt();
или через PINSEL0 переключить пины перед VICIntEnClear = (1<<15);
То глюк исчезает. Ну т.е. прерывание уже не срабатывает и сброс не происходит.