Добрый день! Подскажите, как правильно реализовать перевод МК в спящий режим и его побудка одной кнопкой. Пробую реализовать это на МК 2313, к порту PD6 подключена кнопка второй ногой на землю, а к порту PB2 анод светодиода, в катод резистор и на плюс питания для проверки режима работы, т.е. после подачи питания мигает диод, затем по нажатию кнопки он засыпает, следующее нажатие - проснулся. Прочитал книгу Белова по программированию МК и в частности по регистру управления МК MCUCR, но вопросы. Составил алгоритм работы программы: 1. инициализация мк 2. настройка портов PD как вход, PB - выход 3. проверка состояния нажата кнопка - если нет - работает цикл мигания диодом, иначе прерывание 4. в прерывании проверяем, что записано в регистре SE и если 0 - ставим 1, иначе выход из прерывания 5. команда спать и ожидание нового прерывания.
подскажите, все ли правильно продумал. черновой вариант коде=а выложу завтра на cvavr
|