]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/adafruit_blinka/microcontroller/mcp2221/i2c.py
initial working MCP2221
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / mcp2221 / i2c.py
diff --git a/src/adafruit_blinka/microcontroller/mcp2221/i2c.py b/src/adafruit_blinka/microcontroller/mcp2221/i2c.py
new file mode 100644 (file)
index 0000000..ef7f784
--- /dev/null
@@ -0,0 +1,24 @@
+from adafruit_blinka.microcontroller.mcp2221.pin import Pin
+from .mcp2221 import mcp2221
+
+class I2C:
+
+    def __init__(self, *, baudrate=100000):
+        mcp2221.i2c_configure(baudrate)
+
+    def scan(self):
+        return mcp2221.i2c_scan()
+
+    def writeto(self, address, buffer, *, start=0, end=None, stop=True):
+        mcp2221.i2c_writeto(address, buffer, start=start, end=end)
+
+    def readfrom_into(self, address, buffer, *, start=0, end=None, stop=True):
+        mcp2221.i2c_readfrom_into(address, buffer, start=start, end=end)
+
+    def writeto_then_readfrom(self, address, buffer_out, buffer_in, *,
+                              out_start=0, out_end=None,
+                              in_start=0, in_end=None, stop=False):
+        mcp2221.i2c_writeto_then_readfrom(address, buffer_out, buffer_in,
+                                          out_start=out_start, out_end=out_end,
+                                          in_start=in_start, in_end=in_end)
+