Você está na página 1de 24

LIBRERÍA

U8GLIB
CATEGORIA: ARDUINO
La U8glib es una librería para Arduino creada para simplificar la tarea
de mostrar información en pantallas pequeñas.

Cuenta con funciones para mostrar texto con distintos tipos de letra y
tamaños, hacer dibujos, crear animaciones… tareas que de otro modo
serían tediosas de realizar. Aquí puedes encontrar una lista de
dispositivos compatibles con esta pantalla.

Estas son las funciones de la librería:

 begin
 disableCursor
 drawBitmap
 drawBitmapP
 drawBox
 drawCircle
 drawDisc
 drawEllipse
 drawFilledEllipse
 drawFrame
 drawHLine
 drawLine
 drawPixel
 drawRBox
 drawRFrame
 drawStr
 drawStr90
 drawStr180
 drawStr270
 drawStrP
 drawStr90P
 drawStr180P
 drawStr270P
 drawTriangle
 drawVLine
 drawXBM
 drawXBMP
 enableCursor
 firstPage
 getColorIndex
 getFontAscent
 getFontDescent
 getFontLineSpacing
 getHeight
 getMode
 getWidth
 getStrWidth
 InitSPI , InitHWSPI , Init8Bit InitComFn
 nextPage
 print
 setColorIndex
 setContrast
 setCursorColor
 setCursorFont
 setCursorPos
 setCursorStyle
 setDefaultBackgroundColor
 setDefaultForegroundColor
 setDefaultMidColor
 setFont
 setFontLineSpacingFactor
 setFontPosBaseline
 setFontPosBottom
 setFontPosCenter
 setFontPosTop
 setFontRefHeightAll
 setFontRefHeightExtendedText
 setFontRefHeightText
 setHardwareBackup
 setPrintPos
 setRGB
 setRot90
 setRot180
 setRot270
 setScale2x2
 sleepOn
 sleepOff
 undoRotation
 undoScale
 U8GLIB

Ahora veamos cada una de ellas con detenimiento:


begin
Descripción:
Reinicia el display y lo pone en su estado por defecto

Argumentos:

disableCursor
Descripción:
Vuelve invisible el cursor. Se debe usar fuera del bucle de pintado

Argumentos:

drawBitmap
Descripción:

Dibuja un mapa de bits en la posición dada.


Si se le envía un Array, cada posición del
Array representa un pixel de la pantalla. Por
lo que el tamaño máximo del array deberá
ser igual al tamaño de la pantalla. Un 1 en
una posición del array indica que el pixel
correspondiente deberá iluminarse, un 0
indica que debe permanecer apagado.

Argumentos:
Demostracion bitmap

 u8g : Pointer to the u8g structure (C 1 //Establece los pines a los que esta conect
2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
interface only).
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
 x: Posicion en X. 4
 y: Posición en Y. 5 //Declaramos el array con el dibujo que que
 cnt: Número de Bytes que tiene la 6 const uint8_t dibujito[] U8G_PROGMEM = {
imagen en horizontal. 7 0x00, // 00000000
8 0x55, // 01010101
 h: altura de la imagen. 9 0x7f, // 01111111
10 0x3e, // 00111110
11 0x3e, // 00111110
12 0x3e, // 00111110
13 0x3e, // 00111110
14 0x7f // 01111111
15 };
16
17 void draw(void) {
18 /*llamamos a la función drawBitmapP y le i
19 que queremos que dibuje nuestro Array */
20 u8g.drawBitmapP( 0, 0, 1, 8, dibujito);
21 }
22
23 void setup(void) {
24 }
25
26 void loop(void) {
27 // bucle de pintado
28 u8g.firstPage();
29 do {
30 draw();
31 } while( u8g.nextPage() );
32
33 // esperamos un segundo antes de volver a
34 delay(1000);
35 }

drawBox
Descripción:
Dibuja un cuadro de las dimensiones que
recibe como argumento (h y w) en la posición
dada (x,y)
Si una parte del cuadro esta fuera de los
limites de la pantalla dibuja únicamente la
parte que si queda dentro.
Argumentos:
1
2 //Establece los pines a los que esta conect
 u8g : Pointer to the u8g structure (C //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3
interface only). 4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
 x: posición en X de la esquina superior 5
izquierda del cuadrado a dibujar. 6 void setup(void) {}
 y: Posición en Y del la esquina superior 7
8 void loop(void) {
izquierda del cuadrado a dibujar. // bucle de pintado
9
 w: Ancho del cuadrado. 10 u8g.firstPage();
 h: Alto del cuadrado. 11 do {
12 //dibujamos un cuadrado
13 u8g.drawBox(10,12,20,30);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}
drawCircle
Descripción:
Dibuja un circulo (o una porción de un
circulo) del radio que recibe como parámetro
(rad) en la posición dada (x,y)
Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x0, y0: Posición del centro del circulo.
 rad: Tamaño del circulo (su radio).
 opt: Sección del circulo a dibujar.
1
 U8G_DRAW_UPPER_RIGHT: 2 //Establece los pines a los que esta conect
Sección superior derecha 3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
 U8G_DRAW_UPPER_LEFT: 4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
Sección superior izquierda 5
6 void setup(void) {}
 U8G_DRAW_LOWER_LEFT:
7
Sección inferior izquierda 8 void loop(void) {
 U8G_DRAW_LOWER_RIGHT: 9 // bucle de pintado
10 u8g.firstPage();
Sección inferior derecha do {
 U8G_DRAW_ALL: Circulo 11
12 //dibujamos un circulo de radio 14 en la p
completo 13 u8g.drawCircle(20, 20, 14);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}

drawDisc
Descripción:
Dibuja una circunferencia (o una porción de
ella) del radio que recibe como parámetro,
en la posición que recibe.
Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x0, y0: Posición del centro del circulo.
 rad: Tamaño del circulo (su radio).
 opt: Sección del circulo a dibujar.
 U8G_DRAW_UPPER_RIGHT:
Sección superior derecha
 U8G_DRAW_UPPER_LEFT:
Ejemplo Drawdisc
Sección superior izquierda
 U8G_DRAW_LOWER_LEFT: 1 //Establece los pines a los que esta conect
Sección inferior izquierda 2
//SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3
 U8G_DRAW_LOWER_RIGHT: U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4
Sección inferior derecha 5 void setup(void) {}
 U8G_DRAW_ALL: Circulo 6
completo 7 void loop(void) {
8
// bucle de pintado
9 u8g.firstPage();
10 do {
11 //dibujamos un circulo de radio 14 en la p
12 u8g.drawDisc(20, 20, 14);
13 } while( u8g.nextPage() );
14
15
// esperamos un segundo antes de volver a
16 delay(1000);
17 }

drawEllipse
Descripción:
Dibuja una elipse (o una porción de ella) con
rx radus y ‘ry’ en la posición (x0, y0). rx * ry
debe ser inferior a 1024 en el modo de 8 bits
de u8glib.
Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x0, y0: Posición del centro de la elipse.
 rx,ry: Tamaño de la elipse.
 opt: Sección del circulo a dibujar.
1
 U8G_DRAW_UPPER_RIGHT: 2 //Establece los pines a los que esta conect
Sección superior derecha 3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
 U8G_DRAW_UPPER_LEFT: 4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
Sección superior izquierda 5
6 void setup(void) {}
 U8G_DRAW_LOWER_LEFT:
7
Sección inferior izquierda 8 void loop(void) {
 U8G_DRAW_LOWER_RIGHT: 9 // bucle de pintado
10 u8g.firstPage();
Sección inferior derecha do {
 U8G_DRAW_ALL: Circulo 11
12 //dibujamos una elipse
completo 13 u8g.drawEllipse(20, 20, 14,10,U8G_DRAW_ALL
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}
drawFilledEllipse
Descripción:
Dibuja una elipse sin relleno, del tamaño que
recibe como parámetro y en la posición que
se le indica
Argumentos:

 au8g : Pointer to the u8g structure (C


interface only).
 x0, y0: Posición del centro de la elipse.
 rx,ry: Tamaño de la elipse.
 opt: Sección del circulo a dibujar. 1
2 //Establece los pines a los que esta conect
 U8G_DRAW_UPPER_RIGHT:
3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
Sección superior derecha U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4
 U8G_DRAW_UPPER_LEFT:
5
Sección superior izquierda 6 void setup(void) {}
 U8G_DRAW_LOWER_LEFT: 7
8 void loop(void) {
Sección inferior izquierda // bucle de pintado
 U8G_DRAW_LOWER_RIGHT: 9
10 u8g.firstPage();
Sección inferior derecha 11 do {
 U8G_DRAW_ALL: Elipse 12 //dibujamos una elipse en la posición 20,2
13 u8g.>drawFilledEllipse(20, 20, 14,10,U8
completa
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}

drawFrame
Descripción:

Dibuja un cuadrado del tamaño que recibe


como parámetro y de la posición dada.

Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x: Posición X.
 y: Posición Y.
 w: Ancho del cuadrado.
 h: Altura del cuadrado.
1 //Establece los pines a los que esta conect
2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4
5 void setup(void) {}
6
7 void loop(void) {
8 // bucle de pintado
9 u8g.firstPage();
10 do {
11 //dibujamos un cuadrado en la posición 10,
12 u8g.drawFrame(10,12,30,20);
13 } while( u8g.nextPage() );
14
15 // esperamos un segundo antes de volver a
16 delay(1000);
17 }

drawHLine
Descripción:

Dibuja una linea horizontal en la posición


que se le indica (x,y) de un largo igual al que
recibe como parámetro

Argumentos: 1
2 //Establece los pines a los que esta conect
 u8g : Pointer to the u8g structure (C 3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
interface only).
 x: Posición en X 5
6 void setup(void) {}
 y: Posición en Y 7
 w: Ancho 8 void loop(void) {
9 // bucle de pintado
10 u8g.firstPage();
11 do {
12 //dibujamos Una linea en la posición 10,12
13 u8g.drawHLine(10,12,20);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
delay(10
drawLine
Descripción:
Dibuja una linea recta entre la posición
definida por los puntos x1,y1 y x2,y2.
Argumentos:
1
2 //Establece los pines a los que esta conect
 u8g : Pointer to the u8g structure (C //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3
interface only). 4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
 x1, y1: Posición inicial. 5
6 void setup(void) {}
 x2, y2: Posición final
7
8 void loop(void) {
9 // bucle de pintado
10 u8g.firstPage();
11 do {
12 //dibujamos Una linea recta entre los punt
13 u8g.drawLine(7, 10, 40, 55);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}

drawPixel
Descripción:

Dibuja un punto (enciende un pixel) en la


posición dada.

Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x: Coordenada X.
 y: Coordenada Y
1 //Establece los pines a los que esta conect
2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4
5 void setup(void) {}
6
7 void loop(void) {
8 // bucle de pintado
9 u8g.firstPage();
10 do {
11 //dibujamos un punto en la posición 14,23
12 u8g.drawPixel(14,23);
13 } while( u8g.nextPage() );
14
15 // esperamos un segundo antes de volver a
16 delay(1000);
17 }

drawRFrame
Descripción:

Dibuja un cuadrado con los bordes


redondeados. del tamaño que se le
especifica, en la posición que se le da y con
un radio en las esquinas que se le pasa
como parámetro.

Argumentos:
1 //Establece los pines a los que esta conect
 u8g : Pointer to the u8g structure (C 2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
interface only). 4
 x: Posición en X de la esquina superior 5 void setup(void) {}
izquierda. 6
 y: Posición en Y de la esquina superior 7 void loop(void) {
derecha. 8 // bucle de pintado
9 u8g.firstPage();
 w: Ancho del cuadro. 10 do {
 h: Alto del cuadro. 11 //dibujamos un cuadro en 14,23, de 20px de
 r: Radio de los vertices. 12 de 7
13 u8g.drawRFrame(14,23,20,20,7);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}
drawStr (drawStr90,
drawStr180, drawStr270,
drawStrP, drawStr90P,
drawStr180P,
drawStr270P)
Descripción:
1 //Establece los pines a los que esta conect
2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
Escribe una cadena de texto (String) en la 3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
posición definida por x,y y del tamaño de la 4
función usada. (drawStr90 escribira con un 5 void setup(void) {}
6
tamaño de 90,drawStr180 con un tamaño de 7 void loop(void) {
180…etc) 8 // bucle de pintado
9 u8g.firstPage();
Argumentos: 10 do {
11 //dibujamos un cuadro en 14,23, de 20px de
12 de 7
u8g : Pointer to the u8g structure (C interface 13 u8g.drawStr90(0, 20, "drawStr90");
only). x: Posición en X. y: Posición en Y. s: 14 u8g.drawStr180(30, 20, "drawStr180");
texto. 15 u8g.drawStr270(10, 70, "drawStr270");
16 } while( u8g.nextPage() );
17
18 // esperamos un segundo antes de volver a
19 delay(1000);
}

drawTriangle
Descripción:
Dibuja el triangulo formado por los tres
puntos que le pasemos como argumento.
Argumentos:

 u8g : Pointer to the u8g structure (C


interface only).
 x0: Posicion X del punto 0.
 y0: Posición Y del punto 0.
 x1: Posición X del punto 1.
 y1: Posición Y del punto 1.
 x2: Posición X del punto 2.
 y2: Posición Y del punto 2.
1 //Establece los pines a los que esta conect
2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4
5 void setup(void) {}
6
7 void loop(void) {
8 // bucle de pintado
9 u8g.firstPage();
10 do {
11 //Dibujamos el triangulo formado por lo
12 u8g.drawTriangle(14,55, 45,33, 9,43);
13 } while( u8g.nextPage() );
14
15 // esperamos un segundo antes de volver a
16 delay(1000);
17 }

drawVLine
Descripción:

Dibuja una linea vertical que empieza en el


punto que pasamos como parámetro y tiene
la longitud que le pasemos.
1
2 //Establece los pines a los que esta conect
Argumentos: //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3
4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
u8g : Pointer to the u8g structure (C interface 5
only). x: Posición X del punto de inicio. y: 6 void setup(void) {}
Posición Y del punto de inicio. h: Longitud de 7
8 void loop(void) {
la linea. // bucle de pintado
9
10 u8g.firstPage();
11 do {
12 //Dibujamos una linea que empieza en (14,5
13 u8g.drawVLine(14,55, 20);
14 } while( u8g.nextPage() );
15
16 // esperamos un segundo antes de volver a
17 delay(1000);
}
drawXBMP
Descripción:

Dibuja una imagen en la posición y con el


tamaño especificado.
1
Argumentos: 2 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
3 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
4 #define u8g_logo_width 38
 u8g : Pointer to the u8g structure (C
5 #define u8g_logo_height 24
interface only).
6
 x: posición en X. static unsigned char u8g_logo_bits[] = {
7
 y: posición en Y. 8 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff,
 w: ancho. 9 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f,
 h: alto. 10
11 void setup(void) {}
 bitmap: imagen.
12
13 void loop(void) {
14 // bucle de pintado
15 u8g.firstPage();
16 do {
17 //Dibujamos la imagen desde la posición (0
18 u8g.drawXBM( 0, 0, u8g_logo_width, u8g_log
19 } while( u8g.nextPage() );
20
21 // esperamos un segundo antes de volver a
22 delay(1000);
}

enableCursor
Descripción:

Vuelve visible el cursor

Argumentos:

firstPage
Descripción:

Inicia el bucle de pintado, debe llamarse antes del bucle.

Argumentos:

getColorIndex
Descripción:

Devuelve el color actualmente seleccionado para dibujar en el bucle.

Argumentos:

getFontAscent
Descripción:

Devuelve el tamaño de letra seleccionado

Argumentos:

getFontLineSpacing
Descripción:
Devuelve la distancia vertical entre
Argumentos:

getHeight
Descripción:
devuelve la altura de
Argumentos:

getMode
Descripción:
Devuelve información sobre el display y el m
Argumentos:

getWidth
Descripción:
Devuelve el ancho
Argumentos:

getStrWidth
Descripción:
Devuelve el ancho
Argumentos:

nextPage
Descripción:
Marca el final del
Argumentos:


1
2 //Establece los pines a los que esta conect
3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
5 void setup(void) {}

print 6
7 void loop(void) {
8 // bucle de pintado
9 u8g.firstPage();
Descripción: do {
Escribe en pantalla 10
11 //Dibujamos una linea que empieza en (14,55
Argumentos: 12 u8g.print("Trastejant")
string: la cadena a escribir 13 } while( u8g.nextPage() );
14
15 // esperamos un segundo antes de volver a p
16 delay(1000);
}
setColorIndex
Descripción:
Define el color que se utilizará para dibujar. 1
Argumentos: 2 //Establece los pines a los que esta conect
3 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Res
4 U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);
 u8g : Pointer to the u8g structure (C void setup(void) {}
5
interface only). 6
 color_index: Color con el que se 7 void loop(void) {
8 // bucle de pintado
dibujará. u8g.firstPage();
9
10 do {
11 //Establecemos el color
12 u8g.setColorIndex(1);
13 //dibujamos
14 u8g.drawBox(10, 12, 20, 30);
15
16 //cambiamos de color
17 u8g.setColorIndex(0);
18 //volvemos a dibujar
19 u8g.drawPixel(28, 14);
20 } while( u8g.nextPage() );
21
22 // esperamos un segundo antes de volver a p
23 delay(1000);
}

setCursorColor
Descripción:
Define el color del cursor y del
Argumentos:

 u8g : Pointer to the u8g structure (C interface only)


 fg: Color de primer plano.
 bg: Color de fondo.
setCursorFont
Descripción:
Define la forma
Argumentos:

 u8g : Pointer to the u8g structure (C interface only).


 font: Figura del cursor.

setCursorPos
Descripción:
Pinta el cursor en
Argumentos:

 u8g : Pointer to the u8g structure (C interface only).


 x: posición en X.
 y: posición en Y.

setDefaultBackgroundColor, setDefaultForegroundColor, se
Descripción:
Asigna colores
Argumentos:

setFont
Descripción:
Define el tipo de letra que
Los tipos de letra deberán es
Argumentos:
u8g : Pointer to the u8g
font: puntero donde se encuentra la fuente de letra..

setFontLineSpacingFactor
Descripción:
Define la distancia
Argumentos:
u8g : Pointer to the u8g
factor: ver tabla:.

setFontPosBaseline, setFontPosBottom, setFontPosCenter,


Descripción:
Define la alineación
Argumentos:

setFontRefHeightAll, setFontRefHeightExtendedText, set


Descripción:

 setFontRefHeightAll: Ascent will be the highest ascent of all glyphs of the current font. Descent w
 setFontRefHeightExtendedText: Ascent will be the largest ascent of “A”, “1” or “(” of the current
the default after startup).
 setFontRefHeightText: Ascent will be the ascent of “A” or “1” of the current font. Descent will be

setHardwareBackup
Descripción:
Se usa en caso de tener la conexión SPI, TWI o UART multiplexada. En este caso se hace una

Argumentos:
u8g : Pointer to the u8g
backup_cb: Estado del Hardware.

1
2 U8GLIB_DOGM128 u8g(7, 5, 1, 2); // SPI Com: SCK = 7, MOSI = 5, CS = 1, A0 = 2
3
4 void setup() {
5
6 // SPI backup: Avoid conflict between SW-SPI (u8glib) and HW-SPI (SD)
7 u8g.setHardwareBackup(u8g_backup_avr_spi);
8
9 // Setup Arduino SD library
10 pinMode(SS, OUTPUT);
11 if (SD.begin(23)) {
12 mas_Init(mas_device_sd, NULL);
13 }
14
}

setPrintPos
Descripción:
Asigna una posición x,y para
Argumentos:

 x: Posición en X.
 y: Posición en Y.
setRGB
Descripción:
Asigna un color en
Argumentos:

 u8g : Pointer to the u8g structure (C interface only).


 r: Rojo, rango: 0..255.
 g: Verde, rango: 0..255.
 b: Azul, rango: 0..255.

setRot90, setRot180,
setRot270 1 #include
2
Descripción: 3 //Establece los pines a los que esta conec
4 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Re
Rota el dibujo en el display 90,180 o 270 5 #define cs 2 // CS
grados respectivamente en el sentido de las 6 #define a0 3 // DC
agujas del reloj. 7 #define reset 4 // RST
Argumentos: 8 #define sck 5 // D0
9 #define mosi 6 // D1
– 10
11 int x, y;
12
13 //SPI Comunicación por SW (sck, mosi, cs,
14 U8GLIB_SSD1306_128X64 u8g(sck, mosi, cs, a
15
16
17
18 void setup(void) {}
19
20 void loop(void) {
21 // bucle de pintado
22 u8g.firstPage();
23 do {
24 u8g.setFont(u8g_font_osb18);
25 u8g.setFontPosTop();
26 u8g.setRot90();
27 u8g.drawStr(0, 20, "ABC");
28
29 } while( u8g.nextPage() );
30
31 // esperamos un segundo antes de volver a
32 delay(10);
33 }

1 #include
setScale2x2 2
3 //Establece los pines a los que esta conec
4 //SCK = 13, MOSI = 11, CS = 10, A0 = 9, Re
Descripción: 5 #define cs 2 // CS
6 #define a0 3 // DC
Escala todo lo dibujado despues hasta que 7 #define reset 4 // RST
se restaura con undoScale(), getHeight o 8 #define sck 5 // D0
getWidth 9 #define mosi 6 // D1
Argumentos: 10
11 int x, y;
– 12
13 //SPI Comunicación por SW (sck, mosi, cs,
14 U8GLIB_SSD1306_128X64 u8g(sck, mosi, cs, a
15
16
17
18 void setup(void) {}
19
20 void loop(void) {
21 // bucle de pintado
22 u8g.firstPage();
23 do {
24
25 u8g.setFont(u8g_font_unifont);
26 u8g.setFontPosTop();
27 u8g.drawStr(0, 1, "Hello");
28 u8g.drawHLine(0, 1+14, 40);
29 u8g.setScale2x2(); // Scale up all draw pr
30 u8g.drawStr(0, 12, "Hello"); // actual dis
31 u8g.drawHLine(0, 12+14, 40); // All other
32 u8g.undoScale(); // IMPORTANT: Switch back
33
34
35 } while( u8g.nextPage() );
36
37 // esperamos un segundo antes de volver a
38 delay(10);
39 }

sleepOn/sleepOff
Descripción:
Si el display dispone de función Sleep esta
Argumentos:

undoRotation
Descripción:
Eliminar una rotación aplicada realizada por los comandos “setRotXY”. Después de llamar a est

Argumentos:

undoScale
Descripción:
Elimina un escalado realizado por setScale.
Argumentos:

U8GLIB
Descripción:
Crear una nueva interfaz a
El argumento dev describe el tipo de la pantalla. Por lo general, este constructor no se llama d
disponible. Véase también la última columna de la lista de dispositivos para obtener una lista co

Argumentos:

 dev: Dispositivo que queremos controlar.


 Arduino pins: Los pines a los que esta conectada la pantalla..
 reset: El pin de reset

Sin duda esta librería ofrece muchas posibilidades para mejorar la


estética de la información que mostramos en nuestros proyectos . Si
quieres verla en acción contamos con un videotutorial para que puedas
hacerlo:
Ahora solo queda trastear con ella y descubrir todo su potencial. Y si
tienes cualquier duda solo tienes que preguntar!

Você também pode gostar