The code was too long for one post..
//Programmierung für KNOPF 3_______________________________
if(button4State == HIGH)
{
button4StateHIGH=1;
}
if(button4State == LOW & button4StateHIGH == 1)
{
minuteuser = minuteuser+5;
button4StateHIGH= 0;
}
if(minuteuser > 55)
{
minuteuser=0;
}
Serial.println(minuteuser);
//Ausgabe der leuchtenden LED für Einstellugung der Weckzeit (STUNDEN)
for (int x = 4; x < 21; x++)
{
digitalWrite(x,LOW); // Es werden alle LEDs, welche die Stundenanzeigen vorsorglich auf LOW gesetzt.
}
if(houruser == 1 && minuteuser == 0 ) {digitalWrite(4, HIGH); //Eins
for(int x = 4; x < 21; x++){
if(x==4){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 5 ) {digitalWrite(4, HIGH); digitalWrite(21, HIGH); digitalWrite(16, HIGH); //5 nach Eins
for(int x = 4; x < 21; x++){
if(x==4){x++;}if(x==16){x++;}if(x==21){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 10 ) {digitalWrite(4, HIGH); digitalWrite(21, HIGH); digitalWrite(17, HIGH); //10 nach Eins
for(int x = 4; x < 21; x++){
if(x==4){x++;}if(x==17){x++;}if(x==21){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 15 ) {digitalWrite(4, HIGH); digitalWrite(21, HIGH); digitalWrite(18, HIGH); //Viertel nach Eins
for(int x = 4; x < 21; x++){
if(x==4){x++;}if(x==21){x++;}if(x==18){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 20 ) {digitalWrite(5, HIGH); digitalWrite(17, HIGH); digitalWrite(19, HIGH);digitalWrite(20, HIGH); //10 vor halb Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==17){x++;}if(x==19){x++;}if(x==20){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 25 ) {digitalWrite(5, HIGH); digitalWrite(16, HIGH); digitalWrite(19, HIGH);digitalWrite(20, HIGH); //5 vor halb Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==16){x++;}if(x==19){x++;}if(x==20){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 30 ) {digitalWrite(5, HIGH); digitalWrite(20, HIGH); //Halb 2
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==20){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 35 ) {digitalWrite(5, HIGH); digitalWrite(16, HIGH); digitalWrite(20, HIGH);digitalWrite(21, HIGH); //5 nach halb Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==16){x++;}if(x==20){x++;}if(x==21){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 40 ) {digitalWrite(5, HIGH); digitalWrite(17, HIGH); digitalWrite(20, HIGH);digitalWrite(21, HIGH); //10 nach halb Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==17){x++;}if(x==20){x++;}if(x==21){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 45 ) {digitalWrite(5, HIGH); digitalWrite(18, HIGH); digitalWrite(19, HIGH); //Viertel vor Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==18){x++;}if(x==19){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 50 ) {digitalWrite(5, HIGH); digitalWrite(17, HIGH); digitalWrite(19, HIGH); //10 vor Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==17){x++;}if(x==19){x++;}digitalWrite(x,LOW);}}
if(houruser == 1 && minuteuser == 55 ) {digitalWrite(5, HIGH); digitalWrite(16, HIGH); digitalWrite(19, HIGH); //5 vor Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}if(x==16){x++;}if(x==19){x++;}digitalWrite(x,LOW);}}
if(houruser == 2 && minuteuser == 0 ) {digitalWrite(5, HIGH); //Zwei
for(int x = 4; x < 21; x++){
if(x==5){x++;}digitalWrite(x,LOW);}}
}
//}
//Programmierung: Knopf für Ambiente Light ON/OFF_____________________________________
if(button6State==HIGH)
{
button2StateHIGH=1;
}
if(button6State == LOW & button6StateHIGH == 1)
{
backlight++;
if(backlight == 1){
digitalWrite(30, HIGH); }
if(backlight == 0){
digitalWrite(30,LOW);}
if(backlight > 1){
backlight=0; }
button2StateHIGH=0;
}
}
/* ======================================================================================= */
void digitalClockDisplay(){
// digital clock display of the time
// Serial.print(hour());
// printDigits(minute());
// printDigits(second());
// Serial.print(" ");
// Serial.print(day());
// Serial.print(" ");
// Serial.print(month());
// Serial.print(" ");
// Serial.print(year());
// Serial.println();
}
/* -------------------------------------------------------------------------------------- */
// STUNDEN
// Funktion, um die richtige Stunde anzeigen zu lassen
// wenn Minute > 17, dann auf spätere Stunde schalten
int whichHour(int hour, int minute) {
int result;
if (minute > 17) {
Serial.println("Minute ist groesser als 17, daher hoehere Stunden-LED.");
result = hour + 1;
}
else {
Serial.println("Minute ist kleiner/gleich 17, daher normale Stunden-LED.");
result = hour;
}
return result;
}