original RPi.GPIO code, branch setup
This commit is contained in:
parent
d88eb25910
commit
f93158312e
2 changed files with 58 additions and 0 deletions
4
Raspberry_Pi_Stepper_Motors/README.md
Normal file
4
Raspberry_Pi_Stepper_Motors/README.md
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
# Raspberry_Pi_Stepper_Motors
|
||||
|
||||
Code to accompany this tutorial:
|
||||
https://learn.adafruit.com/adafruits-raspberry-pi-lesson-10-stepper-motors
|
||||
54
Raspberry_Pi_Stepper_Motors/Raspberry_Pi_Stepper_Motors.py
Normal file
54
Raspberry_Pi_Stepper_Motors/Raspberry_Pi_Stepper_Motors.py
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
import RPi.GPIO as GPIO
|
||||
import time
|
||||
|
||||
GPIO.setmode(GPIO.BCM)
|
||||
|
||||
enable_pin = 18
|
||||
coil_A_1_pin = 4
|
||||
coil_A_2_pin = 17
|
||||
coil_B_1_pin = 23
|
||||
coil_B_2_pin = 24
|
||||
|
||||
GPIO.setup(enable_pin, GPIO.OUT)
|
||||
GPIO.setup(coil_A_1_pin, GPIO.OUT)
|
||||
GPIO.setup(coil_A_2_pin, GPIO.OUT)
|
||||
GPIO.setup(coil_B_1_pin, GPIO.OUT)
|
||||
GPIO.setup(coil_B_2_pin, GPIO.OUT)
|
||||
|
||||
GPIO.output(enable_pin, 1)
|
||||
|
||||
def forward(delay, steps):
|
||||
for i in range(0, steps):
|
||||
setStep(1, 0, 1, 0)
|
||||
time.sleep(delay)
|
||||
setStep(0, 1, 1, 0)
|
||||
time.sleep(delay)
|
||||
setStep(0, 1, 0, 1)
|
||||
time.sleep(delay)
|
||||
setStep(1, 0, 0, 1)
|
||||
time.sleep(delay)
|
||||
|
||||
def backwards(delay, steps):
|
||||
for i in range(0, steps):
|
||||
setStep(1, 0, 0, 1)
|
||||
time.sleep(delay)
|
||||
setStep(0, 1, 0, 1)
|
||||
time.sleep(delay)
|
||||
setStep(0, 1, 1, 0)
|
||||
time.sleep(delay)
|
||||
setStep(1, 0, 1, 0)
|
||||
time.sleep(delay)
|
||||
|
||||
|
||||
def setStep(w1, w2, w3, w4):
|
||||
GPIO.output(coil_A_1_pin, w1)
|
||||
GPIO.output(coil_A_2_pin, w2)
|
||||
GPIO.output(coil_B_1_pin, w3)
|
||||
GPIO.output(coil_B_2_pin, w4)
|
||||
|
||||
while True:
|
||||
delay = raw_input("Delay between steps (milliseconds)?")
|
||||
steps = raw_input("How many steps forward? ")
|
||||
forward(int(delay) / 1000.0, int(steps))
|
||||
steps = raw_input("How many steps backwards? ")
|
||||
backwards(int(delay) / 1000.0, int(steps))
|
||||
Loading…
Reference in a new issue