Paso 4: Mostrar texto en la pantalla lcd
Código proporcionado por el humo y los cables
http://www.smokeandwires.co.nz / / este código ha sido tomado de la biblioteca de TFT de Adafruit y modificado / / por nosotros para su uso con nuestros escudos de TFT / módulos / / código original / licencias consulte / / http://www.smokeandwires.co.nz
#include / / biblioteca de gráficos #include "SWTFT.h" de la base / / específicos de Hardware de biblioteca
Los pines de control para el LCD pueden asignarse a cualquier digital o / / analógica horquillas... pero nosotros vamos a usar los pines analógicos, esto nos permite / / doblar los pines con la pantalla táctil (véase el ejemplo de la pintura TFT). #define LCD_CS A3 / / seleccionar el Chip va a analógica 3 / / #define LCD_CD A2 / / comando/Data va a analógico 2 / / #define LCD_WR A1 / / escritura del LCD va a analógico 1 / / #define LCD_RD A0 / / LCD Lea va a analógico 0
#define LCD_RESET A4 / alternativamente sólo podrá conectar al pin de reset de Arduino
Cuando utilice el BREAKOUT Junta sólo, utilizar estas líneas de 8 datos a la pantalla LCD: / / para el Arduino Uno, Duemilanove, Diecimila, etc.: / / D0 se conecta al pin digital 8 (aviso son / / D1 se conecta al pin digital 9 no en orden!) / / D2 se conecta al pin digital 2 / / D3 se conecta al pin digital 3 / / D4 se conecta al pin digital 4 / / D5 se conecta al pin digital 5 / / D6 se conecta al pin digital 6 / / D7 se conecta al pin digital 7 / para el Arduino Mega , utilice alfileres digitales 22 a 29 / / (en el encabezado de la fila 2 en el extremo de la tabla).
Asignar nombres legibles a algunos valores de color de 16 bits comunes: #define negro 0 x 0000 #define azul 0x001F #define rojo 0xF800 #define verde 0x07E0 #define cian 0x07FF #define MAGENTA 0xF81F #define amarillo 0xFFE0 #define blanco 0xFFFF
SWTFT tft; Si se utiliza el escudo, todas las líneas de control y de datos son fijos, y / / una declaración más simple puede usarse opcionalmente: / / SWTFT tft;
void setup(void) {tft.reset();
uint16_t identificador = tft.readID(); TFT.Begin(identifier); }
void loop(void) {para (uint8_t rotación = 0; rotación = 1; rotación ++) {tft.setRotation(rotation); testText(); delay(20000);}}
unsigned testFillScreen() largo {unsigned largo Inicio = micros(); tft.fillScreen(BLACK); tft.fillScreen(RED); tft.fillScreen(GREEN); tft.fillScreen(BLUE); tft.fillScreen(BLACK); micros() vuelta - Inicio;}
unsigned testText() largo {tft.fillScreen(BLACK); sin firmar largo Inicio = micros(); tft.setCursor (0, 0); tft.setTextColor(WHITE); tft.setTextSize(1); tft.println ("Zhungu robótica!");
tft.setTextColor(GREEN); tft.setTextSize(2); TFT.println ("Motor temp ~ 56 grados C"); tft.setTextColor(WHITE);
TFT.println ("ESC Temp ~ 50 grados C"); tft.setTextColor(MAGENTA);
TFT.println ("Sensor de metano ~ 20ppm"); tft.setTextColor(CYAN);
TFT.println ("sensor de hidrógeno ~ 0,2 ppm"); tft.setTextColor(RED);
TFT.println ("Sensor de Co2 ~ 70ppm"); tft.setTextColor(MAGENTA);
TFT.println ("presión de aire ~ 100011Pa"); tft.setTextColor(GREEN);
TFT.println ("actual temp ~ 30 grados de C"); tft.setTextColor(YELLOW);
TFT.println ("humedad actual es 50%"); tft.setTextColor(CYAN);
TFT.println ("Altutude ~ 45m"); tft.setTextColor(WHITE);
TFT.println ("tensión restante ~ 7.6V"); tft.setTextColor(BLUE);
TFT.println ("corriente ~ 12A"); tft.setTextColor(GREEN); TFT.println ("el índice UV es 12/cm ^ 2"); tft.setTextColor(RED); TFT.println ("intensidad de la luz es 930 Lux");
micros() vuelta - Inicio; }