Arduino Program
Arduino Program
ARDUINO PROGRAM
String y;
int x, a, b, c, e;
int z;
boolean f = false;
boolean g = true;
void setup() {
Serial.begin(9600);
pinMode (2, OUTPUT); //DIR
pinMode (3, OUTPUT); //STEP
pinMode (4, OUTPUT); //MS3
pinMode (5, OUTPUT); //MS2
pinMode (6, OUTPUT); //MS1
pinMode (7, OUTPUT); // ENABLE
pinMode(13, OUTPUT);
pinMode(11, INPUT);
pinMode(12, INPUT);
A:
if ( f == false) {
for (e = 0; e <= 650; e++) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if ( digitalRead(12) == 0)
{
f = true;
digitalWrite(13, HIGH);
goto A;
}
}
for (e = 0; e <= 1300; e++) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if ( digitalRead(12) == 0)
{
f = true;
digitalWrite(13, HIGH);
goto A;
}
}
for (e = 0; e <= 1950; e++) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if ( digitalRead(12) == 0)
{
f = true;
digitalWrite(13, HIGH);
goto A;
}
}
for (e = 0; e <= 2600; e++) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if ( digitalRead(12) == 0)
{
f = true;
digitalWrite(13, HIGH);
goto A;
}
}
}
}
void loop() {
if (Serial.available() > 0) {
y = Serial.readString();
delay(100);
a = y.toInt();
if (g == true) {
if (b < a) {
c = a - b;
right();
}
else if (b > a) {
c = b - a;
left();
}
b = a;
}
}
}
void right() {
g = false;
for (x = 1; x <= c; x++) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if (digitalRead(11) == 0) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(13, LOW);
z = 5;
Serial.println(z);
g = true;
return;
}
}
z = 5;
Serial.println(z);
g = true;
return;
}
void left() {
g = false;
for (x = c; x >= 1; x--) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, LOW);
delayMicroseconds(500);
if (digitalRead(12) == 0) {
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(3, HIGH);
delayMicroseconds(500);
digitalWrite(13, HIGH);
z = 5;
Serial.println(z);
g = true;
return;
}
}
z = 5;
Serial.println(z);
g = true;
return;
}
A. VISUAL BASIC PROGRAM