From 031e1c2d3112e068e9cf8900ade534dcd9d0b133 Mon Sep 17 00:00:00 2001 From: WereCatf Date: Mon, 23 Nov 2020 20:42:22 +0200 Subject: [PATCH 1/2] Make compatible with Heltec's CubeCell Arduino-core The functions fast pin-I/O uses are currently missing, so don't define BUSIO_USE_FAST_PINIO. Also, we need typedef for BitOrder, but it refuses to compile without also including Arduino.h, at least under PlatformIO. --- Adafruit_SPIDevice.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Adafruit_SPIDevice.h b/Adafruit_SPIDevice.h index 3d0c32d..77cd872 100644 --- a/Adafruit_SPIDevice.h +++ b/Adafruit_SPIDevice.h @@ -26,6 +26,14 @@ typedef enum _BitOrder { SPI_BITORDER_LSBFIRST = SPI_LSBFIRST, } BitOrder; +#elif defined(__ASR6501__) +#include +typedef enum _BitOrder +{ + SPI_BITORDER_MSBFIRST = MSBFIRST, + SPI_BITORDER_LSBFIRST = LSBFIRST, +} BitOrder; + #else // Some platforms have a BitOrder enum but its named MSBFIRST/LSBFIRST #define SPI_BITORDER_MSBFIRST MSBFIRST @@ -47,7 +55,9 @@ typedef uint32_t BusIO_PortMask; !defined(ARDUINO_ARCH_MBED) typedef volatile uint32_t BusIO_PortReg; typedef uint32_t BusIO_PortMask; +#if not defined(__ASR6501__) #define BUSIO_USE_FAST_PINIO +#endif #else #undef BUSIO_USE_FAST_PINIO From 808cb3877231185c49c2fc929b04593dcc62d71c Mon Sep 17 00:00:00 2001 From: WereCatf Date: Mon, 23 Nov 2020 23:40:45 +0200 Subject: [PATCH 2/2] Update Adafruit_SPIDevice.h --- Adafruit_SPIDevice.h | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/Adafruit_SPIDevice.h b/Adafruit_SPIDevice.h index 77cd872..55a2d70 100644 --- a/Adafruit_SPIDevice.h +++ b/Adafruit_SPIDevice.h @@ -17,7 +17,7 @@ typedef enum _BitOrder { SPI_BITORDER_LSBFIRST = LSBFIRST, } BitOrder; -#elif defined(ESP32) +#elif defined(ESP32) || defined(__ASR6501__) // some modern SPI definitions don't have BitOrder enum and have different SPI // mode defines @@ -26,14 +26,6 @@ typedef enum _BitOrder { SPI_BITORDER_LSBFIRST = SPI_LSBFIRST, } BitOrder; -#elif defined(__ASR6501__) -#include -typedef enum _BitOrder -{ - SPI_BITORDER_MSBFIRST = MSBFIRST, - SPI_BITORDER_LSBFIRST = LSBFIRST, -} BitOrder; - #else // Some platforms have a BitOrder enum but its named MSBFIRST/LSBFIRST #define SPI_BITORDER_MSBFIRST MSBFIRST