From 446ea1b9aa82052d6ff81fc32211ff49c6f3a710 Mon Sep 17 00:00:00 2001 From: etrinh Date: Thu, 11 Mar 2021 20:31:09 +0100 Subject: [PATCH] Fix int32 -> KNXValue conversion (#128) Add KNX_NO_SPI to reduce footprint --- src/arduino_platform.cpp | 4 ++++ src/arduino_platform.h | 3 ++- src/knx/knx_value.cpp | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/arduino_platform.cpp b/src/arduino_platform.cpp index d1d797c..169e653 100644 --- a/src/arduino_platform.cpp +++ b/src/arduino_platform.cpp @@ -2,7 +2,9 @@ #include "knx/bits.h" #include +#ifndef KNX_NO_SPI #include +#endif Stream* ArduinoPlatform::SerialDebug = &Serial; @@ -94,6 +96,7 @@ size_t ArduinoPlatform::readBytesUart(uint8_t *buffer, size_t length) return length; } +#ifndef KNX_NO_SPI void ArduinoPlatform::setupSpi() { SPI.begin(); @@ -111,6 +114,7 @@ int ArduinoPlatform::readWriteSpi(uint8_t *data, size_t len) SPI.transfer(data, len); return 0; } +#endif #ifndef KNX_NO_PRINT void printUint64(uint64_t value, int base = DEC) diff --git a/src/arduino_platform.h b/src/arduino_platform.h index 10c10e6..33929da 100644 --- a/src/arduino_platform.h +++ b/src/arduino_platform.h @@ -24,10 +24,11 @@ class ArduinoPlatform : public Platform virtual size_t readBytesUart(uint8_t* buffer, size_t length); //spi +#ifndef KNX_NO_SPI void setupSpi() override; void closeSpi() override; int readWriteSpi (uint8_t *data, size_t len) override; - +#endif static Stream* SerialDebug; protected: diff --git a/src/knx/knx_value.cpp b/src/knx/knx_value.cpp index 0a7c104..de7a4b7 100644 --- a/src/knx/knx_value.cpp +++ b/src/knx/knx_value.cpp @@ -187,7 +187,7 @@ KNXValue& KNXValue::operator=(const int16_t value) KNXValue& KNXValue::operator=(const int32_t value) { - _value.boolValue = value; + _value.intValue = value; _type = IntType; return *this; }