Страница 1 из 1

Вопрос об энергосбережении AVR

Добавлено: Пт фев 22, 2013 22:31:26
Ромыч
Приветствую! собрал открывалку ворот в брелке сигнализации, питание оставил штатное. тинька13 в режиме ожидания (то есть крутится пустой цикл) жрет 6 мА. Батарейки типа АА хватает на день... Как можно приструнить аппетиты тиньки?

Re: Вопрос об энергосбережении AVR

Добавлено: Пт фев 22, 2013 22:35:58
korsaj
Усыпить! :kill:

Re: Вопрос об энергосбережении AVR

Добавлено: Пт фев 22, 2013 22:37:14
Ромыч
блин)) логичный шаг :o
но как это сделать то?

Re: Вопрос об энергосбережении AVR

Добавлено: Сб фев 23, 2013 01:25:15
JeysonRou
Ромыч писал(а):блин)) логичный шаг :o
но как это сделать то?
На каком языке ты пытаешся это сделать Си, Бейсик?
Чтобы я хоть знал что и как тебе обьяснять)

Re: Вопрос об энергосбережении AVR

Добавлено: Сб фев 23, 2013 08:30:01
Ромыч
точно, забыл указать. пишу в студии на сях

Re: Вопрос об энергосбережении AVR

Добавлено: Сб фев 23, 2013 08:54:40
Vov123
Там по адресу ....Atmel\AVR Tools\AVR Toolchain\avr\include\avr ,для "писателей" есть хидер,sleep называется,там всё и написано.

Re: Вопрос об энергосбережении AVR

Добавлено: Сб фев 23, 2013 22:11:57
Ромыч
пришлось перекодить в cvavr (по некоторым обстоятельствам). В итоге не могу вывести из сна.

Код: Выделить всё

///////////внешнее прерывание. обработчик.
interrupt [EXT_INT0] void ExtInt0(void)
{
MCUCR &= ~( 1 <<SE);  //пробывал так
  MCUCR |= ( 1 <<SE);  // и так
  sleep_disable();            // и даже так
};
}
на INT0 - кнопка на землю. Не выходит из сна и все. Прерывания включены

Re: Вопрос об энергосбережении AVR

Добавлено: Вс фев 24, 2013 07:28:35
vitalik_1984
А она точно на землю замыкается? А то я тогда перепутал ноги - ведь Int0 находится на ноге PB1.
И вообще зачем вам выключать режим сна? Делайте в прерывании все что вам нужно и дальше спать.
Либо в основном цикле то, что нужно, а в конце цикла - сон.Просыпаться по прерыванию INT0.

Re: Вопрос об энергосбережении AVR

Добавлено: Вс фев 24, 2013 15:37:41
codenamehawk
Ромыч писал(а): на INT0 - кнопка на землю. Не выходит из сна и все. Прерывания включены
Как настроены прерывания, выкладывайте всю программу, зачем показывать код прерывания если он не срабатывает?