//MOTOR 1 BEHAVIOUR....................
int dir=12;
int step=13;
int STEP_PER_REV=300;
int speed_dec = 6000;
int val,count,r;
int btn_check = 0;
int impulse=0;
//MOTOR 2 BEHAVIOUR.....................
int dir_2=4;
int step_2=5;
int STEP_PER_REV_2=300;
int speed_dec_2 = 6000;
int val_2,count_2,r_2;
int btn_check_2 = 0;
void setup() {
//MOTOR OUTPUT
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
//COIN ACCEPTOR
pinMode(2, OUTPUT);
pinMode(3, INPUT);
//BUTTON PRESS
pinMode(7, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
Serial.begin(9600);
Serial.println("Started!");
}
void loop()
{
impulse=5;
if(impulse==5)
{
Serial.print("\nCoin inserted");
val = digitalRead(7);
val_2 = digitalRead(6);
//MOTOR 1
if (val == 0)
{
count = count + 1;
if (count == 1)
{
btn_check = btn_check + 1;
r = 1;
while (r <= 1)
{
digitalWrite(dir, HIGH);
for (int x = 0; x < STEP_PER_REV; x++)
{
digitalWrite(step, HIGH);
delayMicroseconds(speed_dec);
digitalWrite(step, LOW);
delayMicroseconds(3000);
impulse=0;
}
delay(1000);
r++;
btn_check++;
if (r == 2)
{
digitalWrite(step, LOW);
}
}
count = 0;
}
}
//MOTOR 2
if (val_2 == 0)
{
count_2 = count_2 + 1;
if (count_2 == 1)
{
btn_check_2 = btn_check_2 + 1;
r_2 = 1;
while (r_2 <= 1)
{
digitalWrite(dir_2, HIGH);
for (int x = 0; x < STEP_PER_REV_2; x++)
{
digitalWrite(step_2, HIGH);
delayMicroseconds(speed_dec_2);
digitalWrite(step_2, LOW);
delayMicroseconds(3000);
impulse=0;
}
delay(1000);
r_2++;
btn_check_2++;
if (r_2 == 2)
{
digitalWrite(step_2, LOW);
}
}
count_2 = 0;
}
}
}
else
{
Serial.print("\nno Coin inserted");
}
}