Göra en Arduino skiss mindre (1 / 3 steg)
Steg 1: Villkorlig kompilering
Ett exempel kan hittas i en av DHT22 sensor bibliotek att inaktivera koden att avkastning flyta värden. På linje 35, 57 och 65 kan du se "#if! defined(DHT22_NO_FLOAT)". Som standard definieras inte DHT22_NO_FLOAT så koden ingår. Du kan definiera det i koden, innan biblioteket, för att stänga dessa funktioner om du inte behöver dem och minska kompilerade storleken något liknande:
#define DHT22_NO_FLOAT
#include < DHT22.h >
Du kan också använda #defines i din kod att byta ut felsökning och produktion kod, såsom:
avkommentera detta för dev-läge
#define DEVMODE 1
void setup() {
#if defined(DEVMODE)
Serial.BEGIN(115200);
Serial.Print ("Devmode på");
#else
Setup LCD
myGLCD.InitLCD();
#endif
i2cbuffer = "";
i2cOutput = "";
Wire.BEGIN(I2C_SLAVE);
Wire.onRequest(sendI2Cdata);
Wire.onReceive(recvI2Cdata);
#if defined(DEVMODE)
Serial.println("Started");
#endif
}
I detta fall jag initiera inte LCD, och senare i koden jag också använder inte LCD ritning funktioner. Detta gör att jag kan testa de i2c metoderna medan du tittar på den seriella porten, men offrar LCD-displayen.