char aa=0;
int bb=0;
char cc=0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,10,9,8,7);
#if defined(ARDUINO) && ARDUINO >= 100
#define printByte(args) write(args);
#else
#define printByte(args) print(args,BYTE);
#endif
#include <Servo.h>
Servo myservo;
void setup()
{
lcd.begin(20,4);
pinMode(6, INPUT_PULLUP);
pinMode(5,INPUT_PULLUP);
lcd.setCursor(0,0);lcd.print(" Stand By ");
attachInterrupt(1, stop1, FALLING);
myservo.attach(4,500,2500);
}
void loop()
{
if(digitalRead(6)==LOW)
{
lcd.setCursor(0,0);lcd.print("RUN angle=");
lcd.setCursor(11,0);lcd.print(bb,DEC);
lcd.setCursor(0,1);lcd.print("Num=");
lcd.setCursor(5,1);lcd.print(cc,DEC);
aa=1;
}
if(aa==1) {myservo.write(bb);bb++;delay(100);lcd.setCursor(11,0);lcd.print(bb,DEC); lcd.print(" ");
if(bb==90){aa=2;delay(2000);lcd.setCursor(0,1);lcd.print("Num=");lcd.setCursor(5,1);lcd.print(cc,DEC); }}
if(aa==2) {myservo.write(bb);bb--;delay(100);lcd.setCursor(11,0);lcd.print(bb,DEC); lcd.print(" ");
if(bb==0){cc++;aa=1;delay(2000);lcd.setCursor(0,1);lcd.print("Num=");lcd.setCursor(5,1);lcd.print(cc,DEC); }}
}
void stop1()
{
lcd.setCursor(0,0);lcd.print(" Stand By ");
lcd.setCursor(0,1);lcd.print(" ");
myservo.write(-90); aa=0; bb=0;cc=0;
}