2020年11月3日火曜日

Arduino試験板2




 
//WiperFinal
//How to use
//SW1 On SW2 On rotates quickly works well
//SW1 On SW2 Off rotates slowly doesn't works properly
//SW1 Off stop works well

//Wiper
#include <VarSpeedServo.h>
VarSpeedServo myservo;

void setup() 
{
  //Wiper
  pinMode(10,INPUT);
  pinMode(11,INPUT);
  myservo.attach(9);
}

void loop() 
{  
  //Wiper
  if((digitalRead(10))&&(!digitalRead(11)))
  {
    slow();   
  }

  if((digitalRead(10))&&(digitalRead(11)))
  {
    fast();   
  }  
}

void slow()
{
 myservo.write(20,50,true);
 myservo.write(130,50,true);  
}

void fast()
{
  myservo.write(20,180,true);
  myservo.write(130,180,true);  
}

//LotteryFinal
//How to use
//PB1 on rotates
//PB2 on stop
//PB1 re-on not work push the reset button(Arduino)

//Lottery
#include <AccelStepper.h>
AccelStepper stepper=AccelStepper(8,5,7,6,8);

int val1=0;
int old_val1=0;
int state1=0;
int val2=0;
int old_val2=0;
int state2=0;

void setup() 
  //Lottery 
  pinMode(3,INPUT);
  pinMode(4,INPUT);
  stepper.setMaxSpeed(1000);
}

void loop() 
  //Lottery
  val1=digitalRead(3);
  if((val1)&&(!old_val1))
  {
    state1=1-state1;
  }
  old_val1=val1;

  if(state1)
  {
    stepper.setSpeed(1000);
    stepper.runSpeed();
  }

  val2=digitalRead(4);
  if((val2)&&(!old_val2))
  {
    state2=1-state2;
  }
  old_val2=val2;

  if(state2)
  {
    stepper.stop();
    stepper.runToPosition(); 
  } 
}





0 件のコメント:

コメントを投稿