X-Git-Url: https://git.ayoreis.com/hackapet/Adafruit_Blinka.git/blobdiff_plain/f00d819e500ca5d334db378170b384ddc121b496..2a9fbc820b1a8cdf7d3c3a7da1daee637dfedd4b:/src/busio.py diff --git a/src/busio.py b/src/busio.py index b920140..45e36e4 100755 --- a/src/busio.py +++ b/src/busio.py @@ -11,21 +11,13 @@ from adafruit_blinka import Enum, Lockable, agnostic from adafruit_blinka.agnostic import board_id, detector import adafruit_platformdetect.board as ap_board -EMBEDDED_LINUX_BOARDS = ( - ap_board.RASPBERRY_PI_2B, - ap_board.RASPBERRY_PI_3B, - ap_board.RASPBERRY_PI_3B_PLUS, - ap_board.BEAGLEBONE_BLACK, - ap_board.ORANGE_PI_PC, -) - class I2C(Lockable): def __init__(self, scl, sda, frequency=400000): self.init(scl, sda, frequency) def init(self, scl, sda, frequency): self.deinit() - if board_id in EMBEDDED_LINUX_BOARDS: + if detector.board.any_embedded_linux: from adafruit_blinka.microcontroller.generic_linux.i2c import I2C as _I2C else: from machine import I2C as _I2C @@ -80,7 +72,7 @@ class I2C(Lockable): class SPI(Lockable): def __init__(self, clock, MOSI=None, MISO=None): self.deinit() - if board_id in EMBEDDED_LINUX_BOARDS: + if detector.board.any_embedded_linux: from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI else: from machine import SPI as _SPI @@ -107,6 +99,9 @@ class SPI(Lockable): elif board_id == ap_board.ORANGE_PI_PC: from adafruit_blinka.microcontroller.allwinner_h3.pin import Pin from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI + elif board_id == ap_board.GIANT_BOARD: + from adafruit_blinka.microcontroller.sama5.pin import Pin + from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI else: from machine import SPI as _SPI from machine import Pin @@ -157,7 +152,10 @@ class UART(Lockable): timeout=1000, receiver_buffer_size=64, flow=None): - from machine import UART as _UART + if detector.board.any_embedded_linux: + raise RuntimeError('busio.UART not supported on this platform. Please use pyserial instead.') + else: + from machine import UART as _UART from microcontroller.pin import uartPorts self.baudrate = baudrate