Нужна помощь в написании скетча. Схема простая rgb светодиод и одна кнопка. Нажимаем кнопку светодиод начинает переливаться разными цветами, я не могу разобраться, как сделать так, чтобы при отпускании кнопки сохранялся выбранный цвет.
я бы через while или if делал бы. пока/если кнопка нажата перебирать цвета кнопка не нажата, ничего не делать
допустим через while кнопка нажата происходит смена цвета Код (C++): void loop() { // гасим красный, параллельно разжигаем зеленый for(int i=255; i>=0; i--){ analogWrite( rgbPins[0], i/dim ); analogWrite( rgbPins[1], (255-i)/dim ); delay(10); } // гасим зеленый, параллельно разжигаем синий for(int i=255; i>=0; i--){ analogWrite( rgbPins[1], i/dim ); analogWrite( rgbPins[2], (255-i)/dim ); delay(10); } // гасим синий, параллельно разжигаем красный for(int i=255; i>=0; i--){ analogWrite( rgbPins[2], i/dim ); analogWrite( rgbPins[0], (255-i)/dim ); delay(10); } но цвет не сохраняется, а происходит цикл и цвет возвращается в первоначальное состояние и как будет выглядеть "кнопка не нажата - ничего не делать"
Заведи глобальную либо структуру с тремя цветами по байту на каждый цвет. Ну или массив из трех ячеек по байту. И заполняй их данными.