I need some help.. im new in arduino


i desperately need help.. have arduino uno, sd shield, serial lcd display, , tipping bucket.

my goal make digital tipping bucket.

procedure:
1. read data tipping bucket every time ticked.
2. display data serial lcd display.
3. save data sd shield including time , date when tipping bucket tipped.

my question how program clock without using external hardware, , how sync tipping bucket?

here code
code: [select]

#include <softwareserial.h>
#include <sd.h>
#define  modepin  2


file myfile;

const int switchpin = 7;     //     // reed switch digital pin 7
int counter;
int infinite; // (/)
int tipped;
int nt;
float pertipped; // (/)
//---------------------
void setup(){
serial.begin(9600);
delay(1500);          // allow time serial lcd set up
digitalwrite(modepin, high);
pinmode(switchpin, input);        // switchpin input
digitalwrite(switchpin, high);    // activate internal pullup resistor
serial.write(0x02);
serial.print("f");
serial.write(0x03);

serial.write(0x02); //stx code
serial.print("c"); //c - clear lcd function
serial.write(0x03); //etx code

while (!serial) {
    ; // wait serial port connect. needed leonardo only
  }
 
  serial.write(0x02);
  serial.print("1");
  serial.print("starting sd card...");
  serial.write(0x03);
 
   pinmode(10, output);
   
  if (!sd.begin(4)) {
  serial.write(0x02);
  serial.print("2");
  serial.print("starting failed!");
  serial.write(0x03);
  return;
  }
  serial.write(0x02);
  serial.print("2");
  serial.println("starting done.");
  serial.write(0x03);

serial.write(0x02); //stx code
serial.print("c"); //c - clear lcd function
serial.write(0x03); //etx code

};

void loop(){
  tipped = digitalread(switchpin);  //
  delay(70);
  pertipped += 0.50;
  nt += 1;
  myfile = sd.open("robin.txt", file_write);

  myfile.print(pertipped);
  myfile.print("    ");
  myfile.println(nt);
  myfile.close();
 
  serial.write(0x02);      //stx
  serial.print(">");      // send position info
  serial.print(a);
  serial.write(0x03);    //etx
  serial.write(0x02); //stx
  serial.print("3");
  serial.print(pertipped); //
  serial.write(0x03); //etx
//---------------------------------------
  serial.write(0x02);      //stx
  serial.print(">");      // send position info
  serial.print(a);
  serial.write(0x03);    //etx
  serial.write(0x02); //stx
  serial.print("4");
  serial.print(nt); //
  serial.write(0x03); //etx
};


firstly time issue

there library managing time  http://playground.arduino.cc/code/time

however you'd need somehow set this, , there no way without sort of external hardware, i.e either realtime clock module, or other clever solutions getting time via wifi connection etc.

re: triggering when bucket tipped

firstly you'll need debounce switch see http://playground.arduino.cc/code/bounce

secondly, in loop need wait "switchpin" change state (ie function of debounce code)

i.e if switch active high, without debounce need this


code: [select]

void loop(){
  while(!digitalread(switchpin));  // poll waiting switch go high (note needs debounced !!!!)


//  delay(70); // pointless if use debounce


  pertipped += 0.50;
  nt += 1;
  myfile = sd.open("robin.txt", file_write);

  myfile.print(pertipped);
  myfile.print("    ");
  myfile.println(nt);
  myfile.close();
 
  serial.write(0x02);      //stx
  serial.print(">");      // send position info
  serial.print(a);
  serial.write(0x03);    //etx
  serial.write(0x02); //stx
  serial.print("3");
  serial.print(pertipped); //
  serial.write(0x03); //etx
//---------------------------------------
  serial.write(0x02);      //stx
  serial.print(">");      // send position info
  serial.print(a);
  serial.write(0x03);    //etx
  serial.write(0x02); //stx
  serial.print("4");
  serial.print(nt); //
  serial.write(0x03); //etx
};




Arduino Forum > Using Arduino > Programming Questions > I need some help.. im new in arduino


arduino

Comments

Popular posts from this blog

opencv3, tbb and rasp pi 2 - Raspberry Pi Forums

small ethernet problem - Raspberry Pi Forums

Multithumb configuration params not working? - Joomla! Forum - community, help and support