]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/microcontroller/__init__.py
Agnostic now a package. Interactive testing now relies on monotonic. time now under...
[Adafruit_Blinka-hackapet.git] / src / microcontroller / __init__.py
1 from adafruit_blinka import Enum, agnostic
2
3
4 class Pin(Enum):
5     def __init__(self, id):
6         """Identifier for pin, referencing platform-specific pin id"""
7         self.id = id
8
9     def __repr__(self):
10         import board
11         for key in dir(board):
12             if getattr(board, key) is self:
13                 return "board.{}".format(key)
14         import microcontroller.pin as pin
15         for key in dir(pin):
16             if getattr(pin, key) is self:
17                 return "microcontroller.pin.{}".format(key)
18         return repr(self)
19
20
21 if agnostic.microcontroller == "esp8266":
22     from adafruit_blinka.microcontroller.esp8266 import *
23 elif agnostic.microcontroller == "stm32":
24     from adafruit_blinka.microcontroller.stm32 import *
25 else:
26     raise NotImplementedError("Microcontroller not supported")