X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/blobdiff_plain/c72b2913f8b11bc650b5a17f087a058cf7948fb9..021c1242f9633bfdf2d83c55daec8df750577296:/src/adafruit_blinka/microcontroller/mcp2221/pin.py diff --git a/src/adafruit_blinka/microcontroller/mcp2221/pin.py b/src/adafruit_blinka/microcontroller/mcp2221/pin.py index c66263e..139d8b6 100644 --- a/src/adafruit_blinka/microcontroller/mcp2221/pin.py +++ b/src/adafruit_blinka/microcontroller/mcp2221/pin.py @@ -20,12 +20,19 @@ class Pin: if self.id is None: raise RuntimeError("Can not init a None type pin.") if mode in (Pin.IN, Pin.OUT): + # All pins can do GPIO mcp2221.gp_set_mode(self.id, mcp2221.GP_GPIO) mcp2221.gpio_set_direction(self.id, mode) elif mode == Pin.ADC: + # ADC only available on these pins + if self.id not in (1, 2, 3): + raise ValueError("Pin does not have ADC capabilities") mcp2221.gp_set_mode(self.id, mcp2221.GP_ALT0) mcp2221.adc_configure() elif mode == Pin.DAC: + # DAC only available on these pins + if self.id not in (2, 3): + raise ValueError("Pin does not have DAC capabilities") mcp2221.gp_set_mode(self.id, mcp2221.GP_ALT1) mcp2221.dac_configure() else: