OLED significa diodo emisor de luz orgánico
La pantalla que tenemos es de 128px de ancho y 64px de alto dando una relación de aspecto de 2:1
Su conexión es extremadamente simple de dos cables
La pantalla es bicolor debido a que la zona superior de 128 x 16 es de color amarillo y la zona inferior de 48 x 128 es de color cyan
El sistema de coordenadas es el convencional con el inicio 0 0 en la ezquina superior izquierda. En el eje y comenza de 0 a 63 y en el eje x de 0 a 127. Si por ejemplo usamos las coordenadas (20, 10) el pinto de pixel estaría ubicado en la zona que se indica
Conexión
1. El pin que dice GND lo conectamos al GND del Arduino
2. VDD a la salida 5v de arduino
3. El pin SCK a la salida analoga de arduino A5
4. El pin SDA a la salida analoga de arduino A4
Instalar librerías
Instalamos la de Adafruit GFX que es una librería generica que nos ayudará a la manipulación de texto y gráficos en la pantalla. Se usa para todo tipo de pantallas gráficas
y una especifica del driver de controlador SSD1306
Programación
1. Incluímos la librería wile que es necesaria para la comunicación
2. Incluimos las librerías que hemos descargado
3. Definimos con dos numerales la directiva al compilador para que reemplace toda ocurrencia de ancho por el 128 y alto por el 64
4. Debemos definir el numero de pines de la pantalla OLED ya que las librerías de Adafruit se configuradas a otra cantidad de salidas correspondientes a modulso propios. Por ello es necesario especificar
5. Creamos un objeto de tipo "Adafruit_SSD1306" llamado "oled" y dentro del parantesis le pasaremos una serie de parámetros de inicialización
- Numero de pixeles de ANCHO
- Número de pixeles de ALTO
- La referencia de la librería Wire
- El pin de reset
6. En void setup comenzamos la comuniación con wire.begin
7. Luego la msima función pero con el objeto creado "oled". En el parentesis indicamos dos parámetros:
- El primero uan constanet definida dentro de la librería con el nombre SSD1306_SWITCHCAPVCC que es un comando para establecer un valor especifico de alimentación para la pantalla
- El segundo se trata de la ubicación IDOCE que es 0x3C
9. Luego con al función setTextColor indicamos entre parentesis el color del pixel a mostrar. Como la pantalla es monocromo solo usaremso el color blanco
10. Luego con la función setCursor especificamos al coordenadas desde donde deseamos comenzar a escribir
11. Luego con setTextSize indicamos el tamaño de los caracteres a escribir
12. Luego con la función print escribimos en pantalla el texto
13. Luego volvemos a usar la función setcursor para definir nuevas coordenadas para otro texto a imprimir y setTextSize para definir otro tamaño
14. Luego en print poderíamos colocar la cuenta en segundos desde que arranca el arduino. Usamos la función millis y la dividimos en 1000 para ver reflejado en segundos la cuenta
15. Luego simplemente agregamos un print seg. para que se coloque seguidamente de la cuenta
16. Finalmente colocamos la función display que lo que hace es mostrar todo lo que acabmso de crear
Generar un círculo
Dibujar un circulo requiere de 4 parámetros
- Los dos primeros son las coordenadas (x,y) del punto centrar desde donde va a comenzar a dibujar el circulo
- El radio que se mide desde el punto central
- Luego el color
1. DrawCircle para dibujar el circulo
2. Dentro de drawCircle usamos primeramente las funciones widht para el ancho de la pantalla y height para el alto y lo dividimos por 2 para obtener exactamente el centro de la pantalla
3. Luego en el tercer parámetro correspondiente al radio del circulo agregamos el i para generar una animación de un circulo que incrementa su tamaño
4. Luego el color
Un recatangulo consta de 5 parámetros:
- Las dos primeras son las coordenada (x,y9 que nacen desde el vertice superior izquierdo
- Luego tenemos la anchura y altura en pixeles que también nacen del mismo vértice
- Finalmente el color
Luego podemos agregar un texto
Generar pixeles
Para generar un pixel usamos el drawPixel
Rectangulo relleno
Para rellenar un rectangulo usamos el fillRect y para hacer las letras usamos el color Black
Y tiene muchas más opciones que podemos ver desde aquí
https://learn.adafruit.com/adafruit-gfx-graphics-library/graphics-primitives
No hay comentarios:
Publicar un comentario