Files

  • Not Found
  • Invalid object requested. SHA must identify a commit or a tree.
Last update 1 week 1 day by Blaze-Pascal
FilesCodeGFX_Library_for_Arduinosrcdatabus
..
Arduino_AVRPAR16.cpp
Arduino_RPiPicoPAR16.cpp
Arduino_RTLPAR8.cpp
Arduino_RPiPicoSPI.h
Arduino_RPiPicoSPI.cpp
Arduino_RPiPicoPAR8.h
Arduino_RPiPicoPAR8.cpp
Arduino_RPiPicoPAR16.h
Arduino_NRFXSPI.h
Arduino_STM32PAR8.cpp
Arduino_NRFXSPI.cpp
Arduino_HWSPI.h
Arduino_HWSPI.cpp
Arduino_ESP8266SPI.h
Arduino_ESP8266SPI.cpp
Arduino_ESP32SPIDMA.h
Arduino_RTLPAR8.h
Arduino_STM32PAR8.h
Arduino_ESP32SPI.h
Arduino_Wire.cpp
Arduino_mbedSPI.cpp
Arduino_XL9535SWSPI.h
Arduino_XL9535SWSPI.cpp
Arduino_XCA9554SWSPI.h
Arduino_XCA9554SWSPI.cpp
Arduino_Wire.h
Arduino_UNOPAR8.h
Arduino_SWPAR16.cpp
Arduino_UNOPAR8.cpp
Arduino_SWSPI.h
Arduino_SWSPI.cpp
Arduino_SWPAR8.h
Arduino_SWPAR8.cpp
Arduino_SWPAR16.h
Arduino_ESP32SPIDMA.cpp
Arduino_ESP32SPI.cpp
Arduino_AVRPAR16.h
Arduino_ESP32LCD8.h
Arduino_ESP32PAR16QQ.h
Arduino_ESP32PAR16QQ.cpp
Arduino_ESP32PAR16Q.h
Arduino_ESP32PAR16Q.cpp
Arduino_ESP32PAR16.h
Arduino_ESP32PAR16.cpp
Arduino_ESP32LCD8.cpp
Arduino_ESP32PAR8.h
Arduino_ESP32LCD16.h
Arduino_ESP32LCD16.cpp
Arduino_DUEPAR16.h
Arduino_DUEPAR16.cpp
Arduino_AVRPAR8.h
Arduino_AVRPAR8.cpp
Arduino_ESP32PAR8.cpp
Arduino_ESP32PAR8Q.cpp
Arduino_ESP32S2PAR8Q.h
Arduino_ESP32S2PAR16.cpp
Arduino_ESP32S2PAR8Q.cpp
Arduino_ESP32S2PAR8.h
Arduino_ESP32S2PAR8.cpp
Arduino_ESP32S2PAR16Q.h
Arduino_ESP32S2PAR16Q.cpp
Arduino_ESP32S2PAR16.h
Arduino_ESP32RGBPanel.h
Arduino_ESP32PAR8Q.h
Arduino_ESP32RGBPanel.cpp
Arduino_ESP32QSPI.h
Arduino_ESP32QSPI.cpp
Arduino_ESP32PAR8QQQ.h
Arduino_ESP32PAR8QQQ.cpp
Arduino_ESP32PAR8QQ.h
Arduino_ESP32PAR8QQ.cpp
Arduino_mbedSPI.h
Arduino_HWSPI.h
/* * start rewrite from: * https://github.com/adafruit/Adafruit-GFX-Library.git */ #ifndef _ARDUINO_HWSPI_H_ #define _ARDUINO_HWSPI_H_ #include <SPI.h> #include "Arduino_DataBus.h" #if !defined(LITTLE_FOOT_PRINT) #ifndef SPI_MAX_PIXELS_AT_ONCE #define SPI_MAX_PIXELS_AT_ONCE 32 #endif #endif // HARDWARE CONFIG --------------------------------------------------------- class Arduino_HWSPI : public Arduino_DataBus { public: #if defined(ESP32) Arduino_HWSPI(int8_t dc, int8_t cs = GFX_NOT_DEFINED, int8_t sck = GFX_NOT_DEFINED, int8_t mosi = GFX_NOT_DEFINED, int8_t miso = GFX_NOT_DEFINED, SPIClass *spi = &SPI, bool is_shared_interface = true); // Constructor #elif defined(ARDUINO_ARCH_SAMD) && defined(SEEED_GROVE_UI_WIRELESS) Arduino_HWSPI(int8_t dc, int8_t cs = GFX_NOT_DEFINED, SPIClass *spi = &LCD_SPI, bool is_shared_interface = true); // Constructor #elif defined(RTL8722DM) && defined(BOARD_RTL8722DM) Arduino_HWSPI(int8_t dc, int8_t cs = GFX_NOT_DEFINED, SPIClass *spi = &SPI1, bool is_shared_interface = true); // Constructor #else Arduino_HWSPI(int8_t dc, int8_t cs = GFX_NOT_DEFINED, SPIClass *spi = &SPI, bool is_shared_interface = true); // Constructor #endif bool begin(int32_t speed = GFX_NOT_DEFINED, int8_t dataMode = GFX_NOT_DEFINED) override; void beginWrite() override; void endWrite() override; void writeCommand(uint8_t) override; void writeCommand16(uint16_t) override; void writeCommandBytes(uint8_t *data, uint32_t len) override; void write(uint8_t) override; void write16(uint16_t) override; void writeRepeat(uint16_t p, uint32_t len) override; void writeBytes(uint8_t *data, uint32_t len) override; void writePixels(uint16_t *data, uint32_t len) override; #if !defined(LITTLE_FOOT_PRINT) void writePattern(uint8_t *data, uint8_t len, uint32_t repeat) override; #endif // !defined(LITTLE_FOOT_PRINT) private: INLINE void WRITE(uint8_t d); #if !defined(LITTLE_FOOT_PRINT) INLINE void WRITE16(uint16_t d); INLINE void WRITEBUF(uint8_t *buf, size_t count); #endif // !defined(LITTLE_FOOT_PRINT) INLINE void DC_HIGH(void); INLINE void DC_LOW(void); INLINE void CS_HIGH(void); INLINE void CS_LOW(void); int8_t _dc, _cs; #if defined(ESP32) int8_t _sck, _mosi, _miso; #endif SPIClass *_spi; bool _is_shared_interface; // CLASS INSTANCE VARIABLES -------------------------------------------- // Here be dragons! There's a big union of three structures here -- // one each for hardware SPI, software (bitbang) SPI, and parallel // interfaces. This is to save some memory, since a display's connection // will be only one of these. The order of some things is a little weird // in an attempt to get values to align and pack better in RAM. #if defined(USE_FAST_PINIO) #if defined(HAS_PORT_SET_CLR) PORTreg_t _csPortSet; ///< PORT register for chip select SET PORTreg_t _csPortClr; ///< PORT register for chip select CLEAR PORTreg_t _dcPortSet; ///< PORT register for data/command SET PORTreg_t _dcPortClr; ///< PORT register for data/command CLEAR #if !defined(KINETISK) ARDUINOGFX_PORT_t _csPinMask; ///< Bitmask for chip select ARDUINOGFX_PORT_t _dcPinMask; ///< Bitmask for data/command #endif // !KINETISK #else // !HAS_PORT_SET_CLR PORTreg_t _csPort; ///< PORT register for chip select PORTreg_t _dcPort; ///< PORT register for data/command ARDUINOGFX_PORT_t _csPinMaskSet; ///< Bitmask for chip select SET (OR) ARDUINOGFX_PORT_t _csPinMaskClr; ///< Bitmask for chip select CLEAR (AND) ARDUINOGFX_PORT_t _dcPinMaskSet; ///< Bitmask for data/command SET (OR) ARDUINOGFX_PORT_t _dcPinMaskClr; ///< Bitmask for data/command CLEAR (AND) #endif // HAS_PORT_SET_CLR #endif // !defined(USE_FAST_PINIO) #if !defined(LITTLE_FOOT_PRINT) union { uint8_t v8[SPI_MAX_PIXELS_AT_ONCE * 2] = {0}; uint16_t v16[SPI_MAX_PIXELS_AT_ONCE]; } _buffer; #endif // !defined(LITTLE_FOOT_PRINT) }; #endif // _ARDUINO_HWSPI_H_
Report a bug