Остановка проги .halt .destroy .free

RANDREY
Offline
Зарегистрирован: 10.06.2012

После исполнения некоторого кода, останавливаю скретч, а вернее остановить нельзя, так как крутится loop да и частота тактирования не отключаема.

заворачиваю так 

// loop start

.......
if (...) {goto s1};
if (...) {goto s2};
......
goto r3;
s1:
мой код
.......
r1: // simulation halt;
delay(100000); 
goto r1;

s2:
//мой код
.....
r2: // simulation halt;
delay(100000);
goto r2;

r3:
delay(1);
} // loop end

 

step962
Offline
Зарегистрирован: 23.05.2011

И в чем смысл послания?

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

останавливают скетч обычно так:

while(true){};

вобщем смысл такой же. Автор похоже хотел МК в режим ожидания перевести - чтобы баттарейку не кушал

leshak
Offline
Зарегистрирован: 29.09.2011

NeiroN пишет:

 Автор похоже хотел МК в режим ожидания перевести - чтобы баттарейку не кушал

Тогда читать:

Arduino Playground - ArduinoSleepCode

Снизить энергопотребление в "0" | Аппаратная платформа Arduino

RANDREY
Offline
Зарегистрирован: 10.06.2012

вчера додумался до схемы - когда можно отключать питание от контроллера, через пин, реле конечно надо включать принужительно через кнопку пуск, как в промышленных станках. (пуск - стоп), тогда действительно кушать батарейку после выполнения нужной программы (минуты до часов) в зависимости от датчиков и ветвлений.

RANDREY
Offline
Зарегистрирован: 10.06.2012

и случайно сегодня наткнулся на библиотеку Enerlib

метод energy.Idle();  не пробовал