error: redefinition of 'int main()'
i keep getting error in code during verify/compile:
am supposed doing alarmclock/stopwatch type of deal...
and trying code compile , run can test if it's adding , subtracting correctly, , make sure coded interrupts work correctly, , figure out how can control lines on serial lcd connect.
***plus*** apologize of volatile declarations, compiler not let me not declare again within voids.
also,
am allowed use "goto clock_set" within void loop? everytime do, says:
quote
" in function 'int main()':
error: redefinition of 'int main()' "
am supposed doing alarmclock/stopwatch type of deal...
and trying code compile , run can test if it's adding , subtracting correctly, , make sure coded interrupts work correctly, , figure out how can control lines on serial lcd connect.
***plus*** apologize of volatile declarations, compiler not let me not declare again within voids.
code: [select]
#include <stdio.h>
#include <stdlib.h>
#include <avr\interrupt.h>
#include <math.h>
volatile int trigger1;
volatile int trigger2;
volatile int mode;
volatile int second;
volatile int second1;
volatile int second2;
volatile int second3;
volatile int minute;
volatile int minute1;
volatile int minute2;
volatile int minute3;
volatile int hour;
volatile int hour1;
volatile int hour2;
volatile int hour3;
int test_t;
void setup()
{
pinmode(2, input); //make digital 2 input
digitalwrite(2, high); // enable pull resistor
pinmode(3, input); // make digital 3 input
digitalwrite(3, high); // enable pull resistor
// setup interrupt 0, pin 2
attachinterrupt(0, i_zero, rising);
// setup interrupt 1, pin 3
attachinterrupt(1, i_one, rising);
interrupts();
volatile int trigger1;
volatile int trigger2;
trigger1=0;
trigger2=0;
}
void i_zero()
{
volatile int trigger1;
trigger1=1;
}
void i_one()
{
volatile int trigger2;
trigger2=1;
}
void loop()
{
volatile int trigger1;
volatile int trigger2;
volatile int mode;
volatile int second;
volatile int second1;
volatile int second2;
volatile int second3;
volatile int minute;
volatile int minute1;
volatile int minute2;
volatile int minute3;
volatile int hour;
volatile int hour1;
volatile int hour2;
volatile int hour3;
//if interrupt 1 or button 1 pressed
if(trigger1 > 0)
{
volatile int mode;
mode++;
if(mode==5)
{
volatile int mode;
mode=0;
}
volatile int trigger1;
trigger1 = 0;
}
if(trigger2 > 0)
{
if(mode==1)
{
minute1++;
second1=0;
}
if(mode==2)
{
hour1++;
second1=0;
}
if(mode==3)
{
minute2++;
minute3 = minute2;
}
if(mode==4)
{
hour2++;
hour3 = hour2;
}
if(mode==5)
{
mode=0;
}
trigger2 = 0;
}
}
int main()
{
clock_set:
if(mode != 0)
{
goto clock_count;
}
if(mode=0)
{
goto elapsed_count;
}
elapsed_count:
second = second++;
if(second == 60)
{
minute++;
second = 0;
}
if(minute == 60)
{
hour++;
minute = 0;
}
remaining_count:
second3 = (second3 - 1);
if(second3 == 0)
{
minute3 = (minute3 - 1);
second3 = 59;
}
if(minute3 == 0)
{
hour3 = (hour3 - 1);
minute3 = 59;
}
test_t = (hour3 + minute3 + second3);
if(test_t == 0)
{
goto alarm;
}
clock_count:
second1 = second1++;
if(second1 == 60)
{
minute1++;
second1 = 0;
}
if(minute1 == 60)
{
hour1++;
minute1 = 0;
}
if(hour1 == 12)
{
hour1 = 0;
}
delay_1:
delaymicroseconds(999849);
display:
serial.print(second1, dec);
serial.print(minute1, dec);
goto clock_set;
alarm:
goto clock_set;
return(0);
}also,
am allowed use "goto clock_set" within void loop? everytime do, says:
quote
in function 'void loop()':
error: label 'clock_set' used not defined in function 'int main()':
you've redefined "main".
arduino sketches don't have "main", it's provided you.
you've got odd scoping going on volatiles.
you should never use "goto" - make fairies cry.
arduino sketches don't have "main", it's provided you.
you've got odd scoping going on volatiles.
quote
am allowed use "goto clock_set" within void loop?
you should never use "goto" - make fairies cry.
Arduino Forum > Forum 2005-2010 (read only) > Software > Syntax & Programs > error: redefinition of 'int main()'
arduino
Comments
Post a Comment