Go Down

Topic: "was not declared in this scop" error (Read 901 times) previous topic - next topic


What dose this mean?

Getting it when I try and upload this code

Code: [Select]
// CountDownTest Joe Pardue 8/15/09

int seconds = 59;
int minutes = 59;     // Inititialise actual values for h,m,s

void setup () {
 // begin the serial communication

void loop () {

   seconds = seconds - 1;  // decrement the seconds
   tick = 0;               // reset the tick flag
   if (seconds < 0){       // If a minute has passed
     seconds = 59 ;         // Send seconds up to 59
     minutes = minutes - 1; // decrement the minutes

   delay(1000); // wait a second


You didn't post the whole error - you should have said " In function 'void loop()':
error: 'tick' was not declared in this scope"

You have a line which says

Code: [Select]
tick = 0;               // reset the tick flag

You never initialised this variable - you did for the variables "seconds" and "minutes".

Either initialise the variable (int tick =0;), or seeing as how you don't actually use the variable tick, just delete the above line from your code.


Your absolutely right, I understand the error now, missed the "In function 'void loop()':"  ;D


Btw, your code won't implement an accurate clock. All the code, not only delay(), will take some time to execute, especially Serial.print[ln]() calls. So the constant delay of 1000 ms won't work. You can use millis() to calculate more accurate delay-time.


Thank you very much for that, Im trying to change the code to print onto 4 7-segment LEDs (but not having much luck)

But I guess I will still need to use millis() when i finally work it out, so thank you!

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131