def __exit__(self, exc_type, exc_value, traceback):
self.deinit()
-def Lockable(ContextManaged):
+class Lockable(ContextManaged):
_locked = False
def try_lock(self):
-from microcontroller import pin
+from adafruit_blinka.microcontroller.esp8266 import pin
D0 = pin.GPIO16
D1 = pin.GPIO5
TX0 = D10
# GPIO0 and GPIO2 have built-in pull-ups on common ESP8266
-# breakout boards making them suitable for I2C SDA and SCL
+# breakout boards making them suitable for I2C SDA and SCL
\ No newline at end of file
-from microcontroller import pin
+from adafruit_blinka.microcontroller.stm32 import pin
X1=pin.A0
X2=pin.A1
class I2C(Lockable):
def __init__(self, scl, sda, frequency=400000):
- super().__init()
self.init(scl, sda, frequency)
def init(self, scl, sda, frequency):
if board == "feather_huzzah":
- pass
-elif board == "feather_m0_express":
- pass
+ from adafruit_blinka.board.feather_huzzah import *
elif board == "nodemcu":
- pass
+ from adafruit_blinka.board.nodemcu import *
elif board == "pyboard":
- pass
+ from adafruit_blinka.board.pyboard import *
else:
raise NotImplementedError("Board not supported")
gc.collect()
\ No newline at end of file
def __init__(self, id):
"""Identifier for pin, referencing platform-specific pin id"""
self.id = id
- pass
+
+ def __repr__(self):
+ import board
+ for key in dir(board):
+ if getattr(board, key) is self:
+ return "board.{}".format(key)
+ import microcontroller
+ for key in dir(microcontroller):
+ if getattr(microcontroller, key) is self:
+ return "microcontroller.{}".format(key)
+ return repr(self)
+
if agnostic.microcontroller == "esp8266":
- pass
+ from adafruit_blinka.microcontroller.esp8266 import *
elif agnostic.microcontroller == "stm32":
- pass
+ from adafruit_blinka.microcontroller.stm32 import *
else:
raise NotImplementedError("Microcontroller not supported")
\ No newline at end of file