/*
Example sketch to control a stepper motor with A4988 stepper motor driver,
AccelStepper library and Arduino: continuous rotation.
More info: https://www.makerguides.com
*/
// Include the AccelStepper library:
#include "AccelStepper.h"
// Define stepper motor connections and motor interface type.
// Motor interface type must be set to 1 when using a driver
#define dirPin 2
#define stepPin 3
#define motorInterfaceType 1
#define uppin 8
#define downpin 7
#define leduppin 9
#define leddownpin 6
// Create a new instance of the AccelStepper class:
AccelStepper stepper = AccelStepper(motorInterfaceType, stepPin, dirPin);
void setup() {
pinMode(uppin,INPUT_PULLUP);
pinMode(downpin,INPUT_PULLUP);
pinMode(leduppin, OUTPUT);
pinMode(leddownpin, OUTPUT);
// Set the maximum speed in steps per second:
stepper.setMaxSpeed(100);
}
void loop() {
static int16_t sp=5;
// Set the speed in steps per second:
stepper.setSpeed(sp);
// Step the motor with a constant speed as set by setSpeed():
stepper.runSpeed();
if(digitalRead(uppin) == LOW) {
stepper.setSpeed(30);
stepper.runSpeed();
}
if(digitalRead(downpin) == LOW) {
sp = 1;
}
if(digitalRead(downpin) == HIGH) {
sp = 5;
}
//LEDEK
if (digitalRead(uppin) == LOW) {
digitalWrite(leduppin, HIGH);
}
else {
digitalWrite(leduppin, LOW);
}
if (digitalRead(downpin) == LOW) {
digitalWrite(leddownpin, HIGH);
}
else {
digitalWrite(leddownpin, LOW);
}
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
stepper1:A-
stepper1:A+
stepper1:B+
stepper1:B-
drv1:ENABLE
drv1:MS1
drv1:MS2
drv1:MS3
drv1:RESET
drv1:SLEEP
drv1:STEP
drv1:DIR
drv1:GND.1
drv1:VDD
drv1:1B
drv1:1A
drv1:2A
drv1:2B
drv1:GND.2
drv1:VMOT
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r
led1:A
led1:C
led2:A
led2:C
r1:1
r1:2
r2:1
r2:2