При этом стандартная хотя бы yield() каждую милисекунду вызывает, хоть как-то блокировку обойти можно, а тут все наглухо. А говорят, что “Интернет врать не будет” ![]()
Процедура ТС еще и с переполнением не дружит…
Зато в нее, в принципе, можно встроить опрос кнопки… и этим обойти ограничение блокирующего кода.
Функцию antidelay() надо переименовать stupidDelay(). Чтоб было понятнее что там делается)
забавно, не?
там внутри совсем другой код…
да это понятно))
я про то, что оно существует.
мне неудобно напоминать уважаемомум дону, что С - регистрозависимый язык :))))
antidelay() vs AntiDelay()
так тут сплошные дилетанты собрались, вот у них и не работает
Да, нет, правильно было.
с телефона пишу, на компе с инетом проблемы.
Простите, чьи проблемы? Ваши? Так не грузите ими нас.
тут сплошные дилетанты собрались, вот у них и не работает
Да. Вот кнопка начинающего ардуинщика. Что бы знать какой цвет нажал. Не антиделей, а просто с чертой внизу.
Спойлер
/////////////////////////////////////
// примеры для ws2812b
//Arduino UNO
#include "Adafruit_NeoPixel.h"
#define kn 5 //вывод кнопки
#define line_ 12 //число пикселей в ленте
uint8_t dataPin = 6;// вывод для подключения
Adafruit_NeoPixel strip = Adafruit_NeoPixel(line_,dataPin , NEO_GRB + NEO_KHZ800);// Создаем переменную strip для управления нашей лентой.
byte R=0;//
byte G=0;//
byte B=0;//
byte M=50;//
byte cv=0;//
///RGB
void setup() {
pinMode (kn, INPUT_PULLUP);//кнопка
strip.begin();
}
void loop() {
delay_(50);
}
///////////////////////////////////////
void delay_(int T){
long Y=millis();//
while(millis()-Y<T){
if(digitalRead(kn)==LOW){
cv++;if(cv>7){cv=1;}
for ( int in = 0; in < line_; in++) {
strip.setPixelColor(in, (cv%2)*M, ((cv/2)%2)*M, ((cv/4)%2)*M);
}
strip.show();
delay(200);
}
}
}
///////////////////////////////////////
с телефона пишу,
Дети-дети. Я письма любимым на парашюте товарища в самолете перед десантированием писал. А вы с телефона не можете…
Было это давно и неправда, но было.)

