Size: a a a

Анархическая электроника

2020 October 31

П

Павел in Анархическая электроника
сразу же
источник

П

Павел in Анархическая электроника
потому что ни паузы ни таймаутов ни действий
источник

t

tmelinked_ in Анархическая электроника
Alex
так
void delay(unsigned long ms)
{
 uint32_t start = micros();

 while (ms > 0) {
   yield();
   while ( ms > 0 && (micros() - start) >= 1000) {
     ms--;
     start += 1000;
   }
 }
}

сделан через micros)))
теперь я не понял как тогда это может быть связано с overflow millis)))
uint32_t uint16_t  посмотри размер числа. и приди к мысли о том, что число start обнуляется
источник

П

Павел in Анархическая электроника
Alex
тут почему-то получилось по другому)))
start обнуляется но тут может быть прикол что хз логику дуино может он набрал uint32_t в потолок и дальше регистер не перескачил на 0
источник

П

Павел in Анархическая электроника
тогда там всегда будет 4294967295
источник

П

Павел in Анархическая электроника
и делей работать нехуя не будет
источник

П

Павел in Анархическая электроника
он его тупо проскочет
источник

t

tmelinked_ in Анархическая электроника
Павел
и делей работать нехуя не будет
проскочет значит обнулит.
источник

A

Alex in Анархическая электроника
Павел
start обнуляется но тут может быть прикол что хз логику дуино может он набрал uint32_t в потолок и дальше регистер не перескачил на 0
так там же через micros всё)
а micros судя по всему
 return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond());
вот так)))
получается delay должен жить...
источник

П

Павел in Анархическая электроника
tmelinked_
проскочет значит обнулит.
4294967295 число что будет с делей
источник

t

tmelinked_ in Анархическая электроника
Alex
так там же через micros всё)
а micros судя по всему
 return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond());
вот так)))
получается delay должен жить...
не тупи
источник

П

Павел in Анархическая электроника
в + он не пойдет
источник

П

Павел in Анархическая электроника
выше
источник

П

Павел in Анархическая электроника
тут вариант что он сделает 1000
источник

П

Павел in Анархическая электроника
а число 4294967295
источник

П

Павел in Анархическая электроника
и тогда бутлуп
источник

П

Павел in Анархическая электроника
пофакту
источник

П

Павел in Анархическая электроника
тут нужно смотреть логику формирования milis
источник

t

tmelinked_ in Анархическая электроника
Alex
так там же через micros всё)
а micros судя по всему
 return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond());
вот так)))
получается delay должен жить...
за елками не видишь лес
источник

t

tmelinked_ in Анархическая электроника
однако там с самого начала используется millis по факту
источник