After debugging and having some conflicting declarations about analog pins, I finally thought it was done, after compiling I got this error:
32:0,
1:
31:12: error: expected unqualified-id before numeric constant
2:5: note: in expansion of macro 'B1'
I can't understand what this means. What's wrong with my code down here?
// don't judge me if it's too long and overcomplicated :P I'm still new xD
int AA1 = 0;
int B1 = 1;
int C1 = 2;
int D1 = 3;
int AA2 = 4;
int B2 = 5;
int C2 = 6;
int AA3 = 8;
int B3 = 9;
int C3 = 10;
int D3 = 11;
int B4 = 12;
int C4 = 13;
int sec = 0;
int min1 = 0;
int min2 = 0;
int hour1 = 8;
bool hour2 = 0;
void setup() {
pinMode(AA1, OUTPUT);
pinMode(B1, OUTPUT);
pinMode(C1, OUTPUT);
pinMode(D1, OUTPUT);
pinMode(AA2, OUTPUT);
pinMode(B2, OUTPUT);
pinMode(C2, OUTPUT);
pinMode(AA3, OUTPUT);
pinMode(B3, OUTPUT);
pinMode(C3, OUTPUT);
pinMode(D3, OUTPUT);
pinMode(B4, OUTPUT);
pinMode(C4, OUTPUT);
}
void loop() {
OutputOn();
delay(1000);
sec++;
if(sec == 60) {
sec = 0;
min1++;
if(min1 == 10) {
min1 = 0;
min2++;
if(min2 == 6) {
min2 = 0;
hour1++;
if(hour1 == 10) {
hour1 = 0;
hour2 = 1;
}
if(hour2 == 1, hour1 == 3) {
hour1 = 1;
hour2 = 0;
}
}
}
}
}
void OutputOn() {
digitalWrite(B1, LOW);
digitalWrite(C1, LOW);
digitalWrite(D1, LOW);
digitalWrite(A2, LOW);
digitalWrite(B2, LOW);
digitalWrite(C2, LOW);
digitalWrite(A3, LOW);
digitalWrite(B3, LOW);
digitalWrite(C3, LOW);
digitalWrite(D3, LOW);
digitalWrite(B4, LOW);
digitalWrite(C4, LOW);
if(min1 == 1) { digitalWrite(AA1, HIGH); }
if(min1 == 2) { digitalWrite(B1, HIGH); }
if(min1 == 3) { digitalWrite(B1, HIGH); digitalWrite(AA1, HIGH); }
if(min1 == 4) { digitalWrite(C1, HIGH); }
if(min1 == 5) { digitalWrite(C1, HIGH); digitalWrite(AA1, HIGH); }
if(min1 == 6) { digitalWrite(D1, HIGH); digitalWrite(B1, HIGH); }
if(min1 == 7) { digitalWrite(D1, HIGH); digitalWrite(AA1, HIGH); digitalWrite(B1, HIGH); }
if(min1 == 8) { digitalWrite(D1, HIGH); }
if(min1 == 9) { digitalWrite(D1, HIGH); digitalWrite(AA1, HIGH); }
if(min2 == 1) { digitalWrite(AA2, HIGH); }
if(min2 == 2) { digitalWrite(B2, HIGH); }
if(min2 == 3) { digitalWrite(B2, HIGH); digitalWrite(AA1, HIGH); }
if(min2 == 4) { digitalWrite(C2, HIGH); }
if(min2 == 5) { digitalWrite(C2, HIGH); digitalWrite(A2, HIGH); }
if(min2 == 6) { digitalWrite(C2, HIGH); digitalWrite(B2, HIGH); }
if(hour1 == 1) { digitalWrite(AA3, HIGH); }
if(hour1 == 2) { digitalWrite(B3, HIGH); }
if(hour1 == 3) { digitalWrite(B3, HIGH); digitalWrite(AA3, HIGH); }
if(hour1 == 4) { digitalWrite(C3, HIGH); }
if(hour1 == 5) { digitalWrite(C3, HIGH); digitalWrite(AA3, HIGH); }
if(hour1 == 6) { digitalWrite(C3, HIGH); digitalWrite(B3, HIGH); }
if(hour1 == 7) { digitalWrite(C3, HIGH); digitalWrite(AA3, HIGH); digitalWrite(B3, HIGH); }
if(hour1 == 8) { digitalWrite(D3, HIGH); }
if(hour1 == 9) { digitalWrite(D3, HIGH); digitalWrite(C3, HIGH); }
if(hour2 == 1) { digitalWrite(B4, HIGH); digitalWrite(C4, HIGH); }
}
It's supposed to be code for a clock (if it wasn't obvious enough) hooked up to 4 7-segment decoders, also connected to 4 7-segment LED displays.
#define. Bizzare errors saying things that are not what you wrote: problem involving#define. – JDługosz May 29 '17 at 09:19