programu do czego masz połączony switch
Kod:
#include <Wire.h> // standardowa biblioteka Arduino
#include <LiquidCrystal_I2C.h> // dolaczenie pobranej biblioteki I2C dla LCD
int redPin = 11;
int greenPin = 10;
int bluePin = 9;
int buttonPin = 6;
int buttonState = 1;
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Ustawienie adresu ukladu na 0x27
int sw = 0;
void setup()
{
Serial.begin(9600);
pinMode(buttonPin, INPUT);
pinMode(buttonPin, OUTPUT);
digitalWrite(buttonPin, 1);
lcd.begin(16,2); // Inicjalizacja LCD 2x16
lcd.backlight(); // zalaczenie podwietlenia
lcd.setCursor(0,0); // Ustawienie kursora w pozycji 0,0 (pierwszy wiersz, pierwsza kolumna)
lcd.print("Hello, world!");
delay(500);
lcd.setCursor(0,1); //Ustawienie kursora w pozycji 0,0 (drugi wiersz, pierwsza kolumna)
lcd.print("Program Oskara");
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
sw=255;
void loop()
{
buttonState = digitalRead(buttonPin);
if (buttonState==LOW) {
sw++;
delay(1000);
if(sw >= 6)
{
sw=0;
}
}
if(sw==0) {
Serial.println("Kolor 1");
setColor(255, 0, 0);
lcd.setCursor(0,0);
lcd.print(buttonState);
} // red
if (sw==1)
{
Serial.println("Kolor 2");
setColor(0, 255, 0); // green
lcd.setCursor(0,0);
lcd.print("kolor Zielony");
}
if(sw==2)
{
Serial.println("Kolor 3");
setColor(0, 0, 255); // blue
lcd.setCursor(0,0);
lcd.print("kolor Czerwony");
}
if(sw==3)
{
Serial.println("Kolor 4");
setColor(255, 255, 0); // yellow
lcd.setCursor(0,0);
lcd.print("kolor Czerwony");
}
if(sw==4)
{
Serial.println("Kolor 5");
setColor(80, 0, 80); // purple
lcd.setCursor(0,0);
lcd.print("kolor Czerwony");
}
if(sw==5)
{
Serial.println("Kolor 6");
setColor(0, 255, 255); // aqua
lcd.setCursor(0,0);
lcd.print("kolor Czerwony");
}
}
void setColor(int red, int green, int blue)
{
#ifdef COMMON_ANODE
red = 255 - red;
green = 255 - green;
blue = 255 - blue;
#endif
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}
masz po prawiony błąd nie zauważyłem wcześniej