Requisitos
Ethernet PLC >>> | 20IOS PLC >>> |
Librería GFX | ADAFRUIT GFX >> |
RA 8875 Touch display + Touch Screen | |
Librerías RA8875 | ADAFRUIT RA8875 >>> |
RA8875 >>> |
Descripción
Driver RA8875 para control industrial
El RA8875 es un potente chip controlador TFT. Es una combinación perfecta para cualquier chip que quiera dibujar en una gran pantalla TFT pero que no tenga la mph (ya sea por hardware o velocidad). En el interior hay 768 KB de RAM, por lo que puede almacenar la pantalla en búfer (y, según el tamaño de la pantalla, también tiene una superposición doble). La interfaz es SPI con un método de comunicación de lectura / escritura de registros muy básico (sin paquetes extraños y complicados).
El RA8875 también puede manejar pantallas táctiles resistivas estándar de 4 cables a través de la misma interfaz SPI para ahorrarle pines. Hay un pin de IRQ que puede usar para ayudar a administrar las interrupciones táctiles.
En la PCB tenemos el chip principal, cambio de nivel para que pueda usarlo de manera segura con lógica de 3-5V. También hay un regulador de 3V para proporcionar energía limpia al chip y la pantalla. Para la luz de fondo, colocamos un amplificador de corriente constante que puede proporcionar 25mA o 50mA hasta 24V. El conector a la pantalla es un conector clásico de '40 pines'.
Conexiones de la familia M-Duino / Ardbox PLC Pinout y RA8875 Pinout
Familia de PLCs M-Duino / Familia de PLCs Ardbox Pinout | RA8875 Pinout |
5 V | VIN |
GND | GND |
SCK | SCK |
SO | MISO |
SI | MOSI |
RX1 (Serial 1) o usando Software Serial | CS |
Pin3 (Some 5V pin) | RESET |
INT | INT1 |
Ejemplo
Programar con el Arduino IDE, si trabajas con la librería RA8875, tienes una gran variedad de ejemplos. Para este post, hemos utilizado el ejemplo del reloj, como puedes ver en la imagen inferior.
Antes de subir el programa a tu controlador lógico programable M-Duino/Ardbox basado en Arduino, es necesario cambiar el pin de definición RA8875_CS por 19 (RX1), el pin de definición RS8875_RESET por 3 (Pin 3) y cambiar tft.begin(RA8875_800x480) por tft.begin(Adafruit_800x480, 8) de la función setup. El último cambio es porque hay diferentes configuraciones de resolución y esta es mejor para la pantalla TFT.
#include <SPI.h> #include <RA8875.h> #define RA8875_CS 19 #define RA8875_RESET 3//any pin or nothing! RA8875 tft = RA8875(RA8875_CS, RA8875_RESET); void setup() { // put your setup code here, to run once: tft.begin(Adafruit_800x480, 8); tft.fillWindow(); tft.setCursor(CENTER, CENTER); // tft.setCursor(X_axis, Y_axis); tft.setTextColor(RA8875_GREEN); // tft.setFontScale(3); tft.println("Industrial Shields"); } void loop() { // put your main code here, to run repeatedly:
tft.setTextColor(RA8875_GREEN);
}
Este es el resultado:
Conectar y programar la placa de controlador de pantalla táctil RA8875 para panel de 7"