So I recently got started with Arduino and decided to do something with the LCD screen.
Apparently I cannot use a variable in the .text() method?
Works:
#include <TFT.h> // Hardware-specific library
#include <SPI.h>
#define CS 10
#define DC 9
#define RESET 8
TFT lcd = TFT(CS, DC, RESET);
void setup() {
lcd.background(255, 255, 255);
lcd.stroke(0, 0, 0);
lcd.setTextSize(5);
lcd.text("fdsa", 10, 20);
}
void loop() {
}
Does not work:
#include <TFT.h> // Hardware-specific library
#include <SPI.h>
#define CS 10
#define DC 9
#define RESET 8
String fdsa = "fdsa";
TFT lcd = TFT(CS, DC, RESET);
void setup() {
lcd.background(255, 255, 255);
lcd.stroke(0, 0, 0);
lcd.setTextSize(5);
lcd.text(fdsa, 10, 20);
}
void loop() {
}
Which returns error messages:
Arduino: 1.8.4 (Windows 10), Board: "Arduino/Genuino Uno"
In file included from C:\Program Files (x86)\Arduino\libraries\TFT\src/TFT.h:36:0,
from C:\Users\Jason\Documents\Arduino\TFTPractice2\TFTPractice2.ino:1:
C:\Program Files (x86)\Arduino\libraries\TFT\src/utility/Adafruit_GFX.h:60:3: warning: #warning "The SD library was not found. loadImage() and image() won't be supported." [-Wcpp]
#warning "The SD library was not found. loadImage() and image() won't be supported."
^
C:\Users\Jason\Documents\Arduino\TFTPractice2\TFTPractice2.ino: In function 'void setup()':
TFTPractice2:15: error: no matching function for call to 'TFT::text(String&, int, int)'
lcd.text(fdsa, 10, 20);
^
C:\Users\Jason\Documents\Arduino\TFTPractice2\TFTPractice2.ino:15:24: note: candidate is:
In file included from C:\Program Files (x86)\Arduino\libraries\TFT\src/TFT.h:36:0,
from C:\Users\Jason\Documents\Arduino\TFTPractice2\TFTPractice2.ino:1:
C:\Program Files (x86)\Arduino\libraries\TFT\src/utility/Adafruit_GFX.h:174:2: note: void Adafruit_GFX::text(const char*, int16_t, int16_t)
text(const char * text, int16_t x, int16_t y),
^
C:\Program Files (x86)\Arduino\libraries\TFT\src/utility/Adafruit_GFX.h:174:2: note: no known conversion for argument 1 from 'String' to 'const char*'
exit status 1
no matching function for call to 'TFT::text(String&, int, int)'
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
The only difference is that I stored the string "fdsa" in variable fdsa. Can someone explain??