collect2.exe: error: ld returned 1 exit status


 :smiley-confuse: keep getting error when try connect buzzer play when timer stops.
how can fix it?

//library
#include "sevenseg.h"

//seven seg
sevenseg disp (10,9,8,7,6,11,12); //defines segments a-g: sevenseg(a, b, c, d, e, f, g);
const int numofdigits =2;       //number of 7 segments
int digitpins [numofdigits]={4,5};  //cc(or ca) pins of segment

const int buzzer = a2;

//constants
const int startbt = 2;
const int changebt = 3;
const int setbt = 13;
const int dotpoint1=a0; //left digit
const int dotpoint2=a1; //right digit


//variables
string number="00";
int digit1=0;
int digit2=0;
int start, change, set;
int setpoint=0;
int countdown;

//useful flags
boolean countflag=false;

void setup()
{
  pinmode (buzzer,output);
  pinmode(startbt, input_pullup);
  pinmode(changebt, input_pullup);
  pinmode(setbt, input_pullup);
  pinmode(dotpoint1, output);
  pinmode(dotpoint2, output);
  //defines number of digits "numofdigits" , digit pins elements of array "digitpins"
  disp.setdigitpins ( numofdigits , digitpins );
  //only common cathode 7segments
  disp.setcommoncathode();
  //control brightness (values 0-100);
  disp.setdutycycle(60);
  disp.settimer(2);
    disp.starttimer();
}

void loop()
{
  //read buttons state
  start = digitalread(startbt);
  change = digitalread(changebt);
  set = digitalread(setbt);
 
 
  if (set == low && !countflag){
    delay(500);
    if (setpoint<2){
      setpoint++;
    }
    else{
      setpoint=0;
    }
  }
 
  //start counting...
  if (start == low && setpoint==0
  ){
    delay(500);
    if (!countflag){
      countflag=true;
      countdown = number.toint();
    }
    else{
      countflag=false;
    }
  }
  if (change == low && setpoint == 1 && !countflag){
    delay(500);
    if (digit1<9){
      digit1++;
    }
    else{
      digit1=0;
    }
    number=string(digit2) + string(digit1);
  }
  if (change == low && setpoint == 2 && !countflag){
    delay(500);
    if (digit2<9){
      digit2++;
    }
    else{
      digit2=0;
    }
    number=string(digit2) + string(digit1);
  }
  //control dot points
  if (setpoint==0){
    digitalwrite(dotpoint1,low);
    digitalwrite(dotpoint2,low);
  }
  else if (setpoint==1){
    digitalwrite(dotpoint1,high);
    digitalwrite(dotpoint2,low);
  }
  else if (setpoint==2){
    digitalwrite(dotpoint1,low);
    digitalwrite(dotpoint2,high);
  }
  //////////counter control///////////
  if (countflag){
    if (countdown>0 && countdown<=10){
      countdown--;
      delay(1000);
      disp.write("0"+string(countdown));
    }
    else if (countdown>10){
      countdown--;
      delay(1000);
      disp.write(string(countdown));
    }
    else if (countdown==0){
      disp.write("00");
      tone(buzzer,600); //play tone
         delay(1000);
      disp.write(" ");
      delay(1000);     
    }
  }
  else{
    disp.write(number);
  }

 }

isr( timer2_compa_vect ){
 disp.interruptaction ();
 }

please use code tags when posting code.  please post entire error message. 


Arduino Forum > Using Arduino > Programming Questions > collect2.exe: error: ld returned 1 exit status


arduino

Comments

Popular posts from this blog

Error compiling for board Arduino/Genuino Uno.

Installation database is corrupt

esp8266 (nodemcu 0.9) client.write très lent ???