motor_pca9685_stepper_motor.py
1 # This example uses an Adafruit Stepper and DC Motor FeatherWing to run a Stepper Motor. 2 # https://www.adafruit.com/product/2927 3 4 import time 5 6 from board import SCL, SDA 7 import busio 8 9 # Import the PCA9685 module. Available in the bundle and here: 10 # https://github.com/adafruit/Adafruit_CircuitPython_PCA9685 11 from adafruit_pca9685 import PCA9685 12 13 from adafruit_motor import stepper 14 15 i2c = busio.I2C(SCL, SDA) 16 17 # Create a simple PCA9685 class instance for the Motor FeatherWing's default address. 18 pca = PCA9685(i2c, address=0x60) 19 pca.frequency = 1600 20 21 # Motor 1 is channels 9 and 10 with 8 held high. 22 # Motor 2 is channels 11 and 12 with 13 held high. 23 # Motor 3 is channels 3 and 4 with 2 held high. 24 # Motor 4 is channels 5 and 6 with 7 held high. 25 26 pca.channels[7].duty_cycle = 0xFFFF 27 pca.channels[2].duty_cycle = 0xFFFF 28 stepper_motor = stepper.StepperMotor( 29 pca.channels[4], pca.channels[3], pca.channels[5], pca.channels[6] 30 ) 31 32 for i in range(100): 33 stepper_motor.onestep() 34 time.sleep(0.01) 35 36 for i in range(100): 37 stepper_motor.onestep(direction=stepper.BACKWARD) 38 time.sleep(0.01) 39 40 pca.deinit()