diff --git a/build/shared/revisions.txt b/build/shared/revisions.txt index 19c2499bb..ed735c689 100644 --- a/build/shared/revisions.txt +++ b/build/shared/revisions.txt @@ -4,6 +4,9 @@ ARDUINO 1.5.6 BETA [ide] * Improved command-line parsing (Matthijs Kooijman) +[libraries] +* TFT: warning messages in PImage class and strings inside examples now stored in flash to save RAM. + ARDUINO 1.5.5 BETA 2013.11.28 NOTICE: diff --git a/libraries/TFT/examples/Arduino/TFTBitmapLogo/TFTBitmapLogo.ino b/libraries/TFT/examples/Arduino/TFTBitmapLogo/TFTBitmapLogo.ino index 3b8d2cb10..7a588b62b 100644 --- a/libraries/TFT/examples/Arduino/TFTBitmapLogo/TFTBitmapLogo.ino +++ b/libraries/TFT/examples/Arduino/TFTBitmapLogo/TFTBitmapLogo.ino @@ -50,10 +50,10 @@ void setup() { TFTscreen.stroke(0, 0, 255); TFTscreen.println(); - TFTscreen.println("Arduino TFT Bitmap Example"); + TFTscreen.println(F("Arduino TFT Bitmap Example")); TFTscreen.stroke(0, 0, 0); - TFTscreen.println("Open serial monitor"); - TFTscreen.println("to run the sketch"); + TFTscreen.println(F("Open serial monitor")); + TFTscreen.println(F("to run the sketch")); // initialize the serial port: it will be used to // print some diagnostic info @@ -67,12 +67,12 @@ void setup() { // try to access the SD card. If that fails (e.g. // no card present), the setup process will stop. - Serial.print("Initializing SD card..."); + Serial.print(F("Initializing SD card...")); if (!SD.begin(sd_cs)) { - Serial.println("failed!"); + Serial.println(F("failed!")); return; } - Serial.println("OK!"); + Serial.println(F("OK!")); // initialize and clear the GLCD screen TFTscreen.begin(); @@ -82,7 +82,7 @@ void setup() { // image file. logo = TFTscreen.loadImage("arduino.bmp"); if (!logo.isValid()) { - Serial.println("error while loading arduino.bmp"); + Serial.println(F("error while loading arduino.bmp")); } } @@ -92,7 +92,7 @@ void loop() { return; } - Serial.println("drawing image"); + Serial.println(F("drawing image")); // get a random location where to draw the image. // To avoid the image to be draw outside the screen, diff --git a/libraries/TFT/examples/Esplora/EsploraTFTBitmapLogo/EsploraTFTBitmapLogo.ino b/libraries/TFT/examples/Esplora/EsploraTFTBitmapLogo/EsploraTFTBitmapLogo.ino index 46d7691de..e3ac59800 100644 --- a/libraries/TFT/examples/Esplora/EsploraTFTBitmapLogo/EsploraTFTBitmapLogo.ino +++ b/libraries/TFT/examples/Esplora/EsploraTFTBitmapLogo/EsploraTFTBitmapLogo.ino @@ -41,10 +41,10 @@ void setup() { EsploraTFT.stroke(0, 0, 255); EsploraTFT.println(); - EsploraTFT.println("Arduino LCD Bitmap Example"); + EsploraTFT.println(F("Arduino LCD Bitmap Example")); EsploraTFT.stroke(0, 0, 0); - EsploraTFT.println("Open serial monitor"); - EsploraTFT.println("to run the sketch"); + EsploraTFT.println(F("Open serial monitor")); + EsploraTFT.println(F("to run the sketch")); // initialize the serial port: it will be used to // print some diagnostic info @@ -55,9 +55,9 @@ void setup() { // try to access the SD card. If that fails (e.g. // no card present), the Esplora's LED will turn red. - Serial.print("Initializing SD card..."); + Serial.print(F("Initializing SD card...")); if (!SD.begin(SD_CS)) { - Serial.println("failed!"); + Serial.println(F("failed!")); Esplora.writeRed(255); return; } @@ -85,7 +85,7 @@ void loop() { return; } - Serial.println("drawing image"); + Serial.println(F("drawing image")); // get a random location where to draw the image. // To avoid the image to be draw outside the screen, diff --git a/libraries/TFT/src/utility/Adafruit_GFX.h b/libraries/TFT/src/utility/Adafruit_GFX.h index f5f23c477..626e3d7e2 100644 --- a/libraries/TFT/src/utility/Adafruit_GFX.h +++ b/libraries/TFT/src/utility/Adafruit_GFX.h @@ -316,7 +316,7 @@ PImage PImage::loadImage(const char * fileName) { // Open requested file on SD card if ((bmpFile = SD.open(fileName)) == NULL) { - Serial.print("loadImage: file not found: "); + Serial.print(F("loadImage: file not found: ")); Serial.println(fileName); return PImage(); // load error } @@ -325,31 +325,31 @@ PImage PImage::loadImage(const char * fileName) { // Parse BMP header if(read16(bmpFile) != 0x4D42) { // BMP signature - Serial.println("loadImage: file doesn't look like a BMP"); + Serial.println(F("loadImage: file doesn't look like a BMP")); return PImage(); } - Serial.print("File size: "); Serial.println(read32(bmpFile)); + Serial.print(F("File size: ")); Serial.println(read32(bmpFile)); (void)read32(bmpFile); // Read & ignore creator bytes bmpImageoffset = read32(bmpFile); // Start of image data - Serial.print("Image Offset: "); Serial.println(bmpImageoffset, DEC); + Serial.print(F("Image Offset: ")); Serial.println(bmpImageoffset, DEC); // Read DIB header - Serial.print("Header size: "); Serial.println(read32(bmpFile)); + Serial.print(F("Header size: ")); Serial.println(read32(bmpFile)); bmpWidth = read32(bmpFile); bmpHeight = read32(bmpFile); if(read16(bmpFile) != 1) { // # planes -- must be '1' - Serial.println("loadImage: invalid n. of planes"); + Serial.println(F("loadImage: invalid n. of planes")); return PImage(); } bmpDepth = read16(bmpFile); // bits per pixel - Serial.print("Bit Depth: "); Serial.println(bmpDepth); + Serial.print(F("Bit Depth: ")); Serial.println(bmpDepth); if((bmpDepth != 24) || (read32(bmpFile) != 0)) { // 0 = uncompressed { - Serial.println("loadImage: invalid pixel format"); + Serial.println(F("loadImage: invalid pixel format")); return PImage(); } - Serial.print("Image size: "); + Serial.print(F("Image size: ")); Serial.print(bmpWidth); Serial.print('x'); Serial.println(bmpHeight);