Заголовок темы должен отражать содержимое. Отредактируй или ветка будет удалена
Помогите пожалуйста, осваивать ардуино начал совсем недавно.
Хочу сделать бегущие поворотники, но не на ленте(диодах) WS2812, а на мощных диодах 1W.
В связи с тем что опыта у меня в этих делах 0 скетч у меня частично не получился, пробежка у диодов идет, но не знаю почему они срабатывают без кнопки при запитывании ардуины.
Подскажите в чем ошибка...
Сам скетч:
// input pins
const int buttonPinL = A2;
const int buttonPinR = A3;
const int buttonPinHaz = A4;
const int LedL1 = 2;
const int LedL2 = 3;
const int LedL3 = 4;
const int LedL4 = 5;
const int LedL5 = 6;
const int LedL6 = 7;
const int LedR1 = 8;
const int LedR2 = 9;
const int LedR3 = 10;
const int LedR4 = 11;
const int LedR5 = 12;
const int LedR6 = 13;
int buttonStateL = 0;
int buttonStateR = 0;
int buttonStateHaz = 0;
void setup() {
//Serial.begin(115200);
pinMode(buttonPinL, INPUT);
pinMode(buttonPinR, INPUT);
pinMode(buttonPinHaz, INPUT);
pinMode(LedL1, OUTPUT);
pinMode(LedL2, OUTPUT);
pinMode(LedL3, OUTPUT);
pinMode(LedL4, OUTPUT);
pinMode(LedL5, OUTPUT);
pinMode(LedL6, OUTPUT);
pinMode(LedR1, OUTPUT);
pinMode(LedR2, OUTPUT);
pinMode(LedR3, OUTPUT);
pinMode(LedR4, OUTPUT);
pinMode(LedR5, OUTPUT);
pinMode(LedR6, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if (analogRead(buttonPinL) == HIGH){
digitalWrite(LedL1, HIGH);
delay (500);
digitalWrite(LedL2, HIGH);
delay (500);
digitalWrite(LedL3, HIGH);
delay (500);
digitalWrite(LedL4, HIGH);
delay (500);
digitalWrite(LedL5, HIGH);
delay (500);
digitalWrite(LedL6, HIGH);
delay (500);
digitalWrite(LedL1, LOW);
digitalWrite(LedL2, LOW);
digitalWrite(LedL3, LOW);
digitalWrite(LedL4, LOW);
digitalWrite(LedL5, LOW);
digitalWrite(LedL6, LOW);
delay (500);
}
if (analogRead(buttonPinL) == LOW){
digitalWrite(LedL1, LOW);
digitalWrite(LedL2, LOW);
digitalWrite(LedL3, LOW);
digitalWrite(LedL4, LOW);
digitalWrite(LedL5, LOW);
digitalWrite(LedL6, LOW);
}
if (analogRead(buttonPinR) == HIGH){
digitalWrite(LedR1, HIGH);
delay (500);
digitalWrite(LedR2, HIGH);
delay (500);
digitalWrite(LedR3, HIGH);
delay (500);
digitalWrite(LedR4, HIGH);
delay (500);
digitalWrite(LedR5, HIGH);
delay (500);
digitalWrite(LedR6, HIGH);
delay (500);
digitalWrite(LedR1, LOW);
digitalWrite(LedR2, LOW);
digitalWrite(LedR3, LOW);
digitalWrite(LedR4, LOW);
digitalWrite(LedR5, LOW);
digitalWrite(LedR6, LOW);
delay (500);
}
if (analogRead(buttonPinR) == LOW){
digitalWrite(LedR1, LOW);
digitalWrite(LedR2, LOW);
digitalWrite(LedR3, LOW);
digitalWrite(LedR4, LOW);
digitalWrite(LedR5, LOW);
digitalWrite(LedR6, LOW);
}
}
Хочу сделать бегущие поворотники, но не на ленте(диодах) WS2812, а на мощных диодах 1W.
В связи с тем что опыта у меня в этих делах 0 скетч у меня частично не получился, пробежка у диодов идет, но не знаю почему они срабатывают без кнопки при запитывании ардуины.
Подскажите в чем ошибка...
Сам скетч:
// input pins
const int buttonPinL = A2;
const int buttonPinR = A3;
const int buttonPinHaz = A4;
const int LedL1 = 2;
const int LedL2 = 3;
const int LedL3 = 4;
const int LedL4 = 5;
const int LedL5 = 6;
const int LedL6 = 7;
const int LedR1 = 8;
const int LedR2 = 9;
const int LedR3 = 10;
const int LedR4 = 11;
const int LedR5 = 12;
const int LedR6 = 13;
int buttonStateL = 0;
int buttonStateR = 0;
int buttonStateHaz = 0;
void setup() {
//Serial.begin(115200);
pinMode(buttonPinL, INPUT);
pinMode(buttonPinR, INPUT);
pinMode(buttonPinHaz, INPUT);
pinMode(LedL1, OUTPUT);
pinMode(LedL2, OUTPUT);
pinMode(LedL3, OUTPUT);
pinMode(LedL4, OUTPUT);
pinMode(LedL5, OUTPUT);
pinMode(LedL6, OUTPUT);
pinMode(LedR1, OUTPUT);
pinMode(LedR2, OUTPUT);
pinMode(LedR3, OUTPUT);
pinMode(LedR4, OUTPUT);
pinMode(LedR5, OUTPUT);
pinMode(LedR6, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if (analogRead(buttonPinL) == HIGH){
digitalWrite(LedL1, HIGH);
delay (500);
digitalWrite(LedL2, HIGH);
delay (500);
digitalWrite(LedL3, HIGH);
delay (500);
digitalWrite(LedL4, HIGH);
delay (500);
digitalWrite(LedL5, HIGH);
delay (500);
digitalWrite(LedL6, HIGH);
delay (500);
digitalWrite(LedL1, LOW);
digitalWrite(LedL2, LOW);
digitalWrite(LedL3, LOW);
digitalWrite(LedL4, LOW);
digitalWrite(LedL5, LOW);
digitalWrite(LedL6, LOW);
delay (500);
}
if (analogRead(buttonPinL) == LOW){
digitalWrite(LedL1, LOW);
digitalWrite(LedL2, LOW);
digitalWrite(LedL3, LOW);
digitalWrite(LedL4, LOW);
digitalWrite(LedL5, LOW);
digitalWrite(LedL6, LOW);
}
if (analogRead(buttonPinR) == HIGH){
digitalWrite(LedR1, HIGH);
delay (500);
digitalWrite(LedR2, HIGH);
delay (500);
digitalWrite(LedR3, HIGH);
delay (500);
digitalWrite(LedR4, HIGH);
delay (500);
digitalWrite(LedR5, HIGH);
delay (500);
digitalWrite(LedR6, HIGH);
delay (500);
digitalWrite(LedR1, LOW);
digitalWrite(LedR2, LOW);
digitalWrite(LedR3, LOW);
digitalWrite(LedR4, LOW);
digitalWrite(LedR5, LOW);
digitalWrite(LedR6, LOW);
delay (500);
}
if (analogRead(buttonPinR) == LOW){
digitalWrite(LedR1, LOW);
digitalWrite(LedR2, LOW);
digitalWrite(LedR3, LOW);
digitalWrite(LedR4, LOW);
digitalWrite(LedR5, LOW);
digitalWrite(LedR6, LOW);
}
}