From b5f317010cc7718b8ba6b49690062d75b78825fd Mon Sep 17 00:00:00 2001 From: Arjan Filius Date: Sun, 2 Dec 2018 18:15:01 +0100 Subject: [PATCH] Fixed Arduino SPI/Ethernet compile issue as described in issue #1623 (#2136) * #1623, implementing suggested change Splitted suggested fix issue #1623 in a header and source part. Dit not completely dive into the code. Giving data twice as parameter feels wrong, but it compiles, and i can succesfully use the W5500 with SPI with this fix. Doesn't compile without. * #1623, implementing suggested change SPI.h/cpp Splitted suggested fix issue #1623 in a header and source part. Dit not completely dive into the code. Giving data twice as parameter feels wrong, but it compiles, and i can succesfully use the W5500 with SPI with this fix. Doesn't compile without. --- libraries/SPI/src/SPI.cpp | 5 +++++ libraries/SPI/src/SPI.h | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/libraries/SPI/src/SPI.cpp b/libraries/SPI/src/SPI.cpp index 863c43adb67..7891c4164b1 100644 --- a/libraries/SPI/src/SPI.cpp +++ b/libraries/SPI/src/SPI.cpp @@ -214,6 +214,11 @@ void SPIClass::writeBytes(uint8_t * data, uint32_t size) spiEndTransaction(_spi); } +void SPIClass::transfer(uint8_t * data, uint32_t size) +{ + transferBytes(data, data, size); +} + /** * @param data void * * @param size uint32_t diff --git a/libraries/SPI/src/SPI.h b/libraries/SPI/src/SPI.h index 783a0a394ca..6007cce8f2d 100644 --- a/libraries/SPI/src/SPI.h +++ b/libraries/SPI/src/SPI.h @@ -65,10 +65,11 @@ class SPIClass void beginTransaction(SPISettings settings); void endTransaction(void); - + void transfer(uint8_t * data, uint32_t size); uint8_t transfer(uint8_t data); uint16_t transfer16(uint16_t data); uint32_t transfer32(uint32_t data); + void transferBytes(uint8_t * data, uint8_t * out, uint32_t size); void transferBits(uint32_t data, uint32_t * out, uint8_t bits);