/ src / pulseio.py
pulseio.py
 1  """
 2  `pulseio` - Pulse Width Modulation input and output control
 3  ===========================================================
 4  See `CircuitPython:pulseio` in CircuitPython for more details.
 5  Not supported by all boards.
 6  
 7  * Author(s): Melissa LeBlanc-Williams
 8  """
 9  
10  import sys
11  
12  from adafruit_blinka.agnostic import detector
13  
14  # pylint: disable=unused-import
15  
16  if detector.board.any_raspberry_pi:
17      from adafruit_blinka.microcontroller.bcm283x.pulseio.PulseIn import PulseIn
18      from adafruit_blinka.microcontroller.bcm283x.pulseio.PWMOut import PWMOut
19  elif detector.board.any_coral_board:
20      from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
21  elif detector.board.any_giant_board:
22      from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
23  elif detector.board.any_beaglebone:
24      from adafruit_blinka.microcontroller.am335x.sysfs_pwmout import PWMOut
25  elif detector.board.any_rock_pi_board:
26      from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
27  elif detector.board.binho_nova:
28      from adafruit_blinka.microcontroller.nova.pwmout import PWMOut
29  elif detector.board.greatfet_one:
30      from adafruit_blinka.microcontroller.nxp_lpc4330.pwmout import PWMOut
31  elif detector.board.any_lubancat:
32      from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
33  elif "sphinx" in sys.modules:
34      pass
35  else:
36      raise NotImplementedError("pulseio not supported for this board.")