то почему же ты не понимаешь, что правильно писать if(currentTime - loopTime > INTERVAL) ?
Вот у вас выбор. Есть инструмент который хоть и с недостатками, но вы его знаете. А есть инструмент в котором вы банально не знаете. А вот когда вы уверены в нем на 100 % то пользуетесь. Тем более мне не надо устройство на 48 часов.
то почему же ты не понимаешь, что правильно писать if(currentTime - loopTime > INTERVAL) ?
ua6em пишет:
а может есть платки какие как таймерок????
Чем пример сверху вам не подходит. И да , у него есть развитие.
потому, что сбой в теле цикла программы приведёт к полной жопе, потому что любой из нормальных таймеров, вызывая прерывание всегда может вернуть систему в исходное положение, если что-то пошло не так
потому, что сбой в теле цикла программы приведёт к полной жопе, потому что любой из нормальных таймеров, вызывая прерывание всегда может вернуть систему в исходное положение, если что-то пошло не так
Не делайте жопу , и не будет жопы. В Ардуине очень мало памяти, что бы делать жопу и потом ее устранять. И есть кнопка Ресет все вернет в норму.
Я правильно понял счётчики сделать низзя ))) ?
Я же тебе ответил.
Всё зависит от задач.
Я правильно понял счётчики сделать низзя ))) ?
уйди, мальчик, не до тебя сейчас - у нас миллис переполняется.
Я правильно понял счётчики сделать низзя ))) ?
уйди, мальчик, не до тебя сейчас - у нас миллис переполняется.
Скажи когда твой millis() будет равен или больше моего. Перейдем на коньяк, а там уже далеко не убежишь. Мне то пить нельзя. )))
Я правильно понял счётчики сделать низзя ))) ?
уйди, мальчик, не до тебя сейчас - у нас миллис переполняется.
да не может он переполниться, я же о 600 секундах говорил
а может есть платки какие как таймерок????
то почему же ты не понимаешь, что правильно писать
if(currentTime - loopTime > INTERVAL)?Вот у вас выбор. Есть инструмент который хоть и с недостатками, но вы его знаете. А есть инструмент в котором вы банально не знаете. А вот когда вы уверены в нем на 100 % то пользуетесь. Тем более мне не надо устройство на 48 часов.
/* #1 #2 #3 */ //#1 //#2 //#3 void setup() { //#1 //#2 //#3 } void loop() { static uint32_t MILLIS ; MILLIS = millis() ; //#1 1000 миллисекунд вычислит. поток 1 static uint32_t past_1 = 0 ; const uint32_t interval_1 = 1000 ; if (MILLIS - past_1 >= interval_1) { past_1 = MILLIS ; // сам код MILLIS = millis() ; } //#2 200 миллисекунд вычислит. поток 2 static uint32_t past_2 = 0 ; const uint32_t interval_2 = 200 ; if (MILLIS - past_2 >= interval_2) { past_2 = MILLIS ; // сам код MILLIS = millis() ; } //#3 100 миллисекунд вычислит. поток 3 static uint32_t past_3 = 0 ; const uint32_t interval_3 = 100 ; if (MILLIS - past_3 >= interval_3) { past_3 = MILLIS ; // сам код } }а может есть платки какие как таймерок????
Чем пример сверху вам не подходит. И да , у него есть развитие.
да не может он переполниться, я же о 600 секундах говорил
а, мы говорим о 4294967295 миллисекундах... сказано же - не до тебя.
а может есть платки какие как таймерок????
Всё!!! Однозначно сюда http://arduino.ru/forumy/ishchu-ispolnitelya
Ну или ко мне. Я буду первый в очереди. Завтра вроде выходной. Ник в скайпе тот же что и здесь.
Я правильно понял счётчики сделать низзя ))) ?
Делай. Кто ж тебе машает кроме тебя ? :-)
http://arduino.ru/forum/programmirovanie/klass-titanovyi-velosiped-stopw...
Тем более мне не надо устройство на 48 часов.
ок. ты даже не понимаешь, сколько часов или суток оно у тебя будет корректно работать.
Тем более мне не надо устройство на 48 часов.
ок. ты даже не понимаешь, сколько часов или суток оно у тебя будет корректно работать.
void(* resetFunc) (void) = 0; // Вызвать когда нужно.....
void(* resetFunc) (void) = 0; // Вызвать когда нужно.....
что за функция ресета?
ты так и не понял, что при корректном алгоритме работы с миллис, ничего ресетить не нужно?
void(* resetFunc) (void) = 0; // Вызвать когда нужно.....
что за функция ресета?
ты так и не понял, что при корректном алгоритме работы с миллис, ничего ресетить не нужно?
Он не только для тех условий.
Он не только для тех условий.
каких тех условий?
то почему же ты не понимаешь, что правильно писать
if(currentTime - loopTime > INTERVAL)?а может есть платки какие как таймерок????
Чем пример сверху вам не подходит. И да , у него есть развитие.
потому, что сбой в теле цикла программы приведёт к полной жопе, потому что любой из нормальных таймеров, вызывая прерывание всегда может вернуть систему в исходное положение, если что-то пошло не так
p.masyukov, слейся.
Ну или ко мне. Я буду первый в очереди. Завтра вроде выходной. Ник в скайпе тот же что и здесь.
Ничего как дочитаю, вкурю, на какой нибудь CODEVISION перейду. А там и с АРМ постепенно разберусь.
http://arduino.ru/forum/programmirovanie/pomogite-so-skobkami-0#comment-...
потому, что сбой в теле цикла программы приведёт к полной жопе, потому что любой из нормальных таймеров, вызывая прерывание всегда может вернуть систему в исходное положение, если что-то пошло не так
Не делайте жопу , и не будет жопы. В Ардуине очень мало памяти, что бы делать жопу и потом ее устранять. И есть кнопка Ресет все вернет в норму.
И есть кнопка Ресет все вернет в норму.
я так и думал...