/ examples / motor_pca9685_stepper_motor.py
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()