Last active
January 30, 2017 06:57
-
-
Save Bumblefuck/1b99b61060e29c88bf2b0db8bf7144d0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Rotates through 480 steps every time the button is pressed. | |
Check your equipment to find out how many motor steps it takes for a full rotation. In my case it's 4800. | |
4800/sides or gear teeth you need to cut = number to put into "const int pulseset" | |
*/ | |
int count = 0; | |
const int pulseset = 480; //change this to change how many sides/gear teeth. 4800 pulses per rotation on my spindexer. | |
const int directionPin = 8; | |
const int pulsePin = 9; // the stepper driver gives one step at the rising edge of the pulse from the Arduino. | |
const int sensorValue = 1000; // sets the speed of rotation. 1000 is slow, 10 is fast | |
const int buttonPin = 7; | |
int button = 1; | |
void setup() { | |
pinMode(directionPin, OUTPUT); | |
pinMode(pulsePin, OUTPUT); | |
pinMode(buttonPin, INPUT_PULLUP); | |
} | |
void loop() { | |
count = 0; | |
button = digitalRead (buttonPin); | |
if (button == LOW) { | |
digitalWrite (directionPin, HIGH); | |
while ( count < pulseset) { | |
digitalWrite(pulsePin, HIGH); | |
delayMicroseconds(sensorValue); | |
digitalWrite(pulsePin, LOW); | |
delayMicroseconds(10); | |
count ++; | |
} | |
} | |
count = 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment