X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/blobdiff_plain/050c6e5bdbe0d75d4b0f053addb368421835a3a7..refs/heads/revert-863-do-not-upload-bdist:/src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py diff --git a/src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py b/src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py index 4d0bf86..0acc5e6 100644 --- a/src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py +++ b/src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py @@ -1,6 +1,10 @@ +# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries +# +# SPDX-License-Identifier: MIT """SPI Classes for RP2040s with u2if firmware""" from .rp2040_u2if import rp2040_u2if + # pylint: disable=protected-access, no-self-use class SPI: """SPI Base Class for RP2040 u2if""" @@ -63,7 +67,9 @@ class SPI: # pylint: enable=too-many-arguments + class SPI_Pico(SPI): + """SPI Class for Pico u2if""" def __init__(self, clock, *, baudrate=100000): index = None @@ -75,7 +81,71 @@ class SPI_Pico(SPI): raise ValueError("No SPI port on specified pin.") super().__init__(index, baudrate=baudrate) + class SPI_Feather(SPI): + """SPI Class for Feather u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 18: + index = 0 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_Feather_CAN(SPI): + """SPI Class for Feather EPD u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 14: + index = 1 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_Feather_EPD(SPI): + """SPI Class for Feather EPD u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 22: + index = 0 + if clock.id == 14: + index = 1 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_Feather_RFM(SPI): + """SPI Class for Feather EPD u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 14: + index = 1 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_QTPY(SPI): + """SPI Class for QT Py u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 6: + index = 0 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_ItsyBitsy(SPI): + """SPI Class for ItsyBitsy u2if""" def __init__(self, clock, *, baudrate=100000): index = None @@ -83,4 +153,28 @@ class SPI_Feather(SPI): index = 0 if index is None: raise ValueError("No SPI port on specified pin.") - super().__init__(index, baudrate=baudrate) \ No newline at end of file + super().__init__(index, baudrate=baudrate) + + +class SPI_MacroPad(SPI): + """SPI Class for MacroPad u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 26: + index = 1 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate) + + +class SPI_KB2040(SPI): + """SPI Class for KB2040 u2if""" + + def __init__(self, clock, *, baudrate=100000): + index = None + if clock.id == 18: + index = 0 + if index is None: + raise ValueError("No SPI port on specified pin.") + super().__init__(index, baudrate=baudrate)