1 00:00:05,540 --> 00:00:12,960 Buenos días, aquí tenemos un nuevo esquema de Arduino en el que vamos a introducir un nuevo elemento. 2 00:00:13,119 --> 00:00:20,640 Este elemento sería el LCD 16x2. No tiene dispositivo I2C, ya veremos lo que es, qué permite. 3 00:00:20,920 --> 00:00:28,280 Hay dos tipos de LCDs que aparecen aquí en Tinkercad, que sería el LCD 16x2, que es el que acabo de añadir aquí, 4 00:00:28,640 --> 00:00:32,859 y luego tendremos el I2C, que nos permite con menos pines poder hacer lo mismo. 5 00:00:32,859 --> 00:00:37,719 Aquí este está compuesto por 16 pines, es un esquema un poco más complejo 6 00:00:37,719 --> 00:00:45,000 Este tipo de pantalla puede mostrar 16 caracteres por línea y en total dos líneas 7 00:00:45,000 --> 00:00:48,159 Con lo cual serían 32 caracteres de manera total 8 00:00:48,159 --> 00:00:54,560 Pero a diferencia del LCD i2c, de este otro, necesita mucho más pines y por tanto es más complejo 9 00:00:54,560 --> 00:01:01,100 Esto hace que el montaje sea, como veis, con muchos más cables 10 00:01:01,100 --> 00:01:06,599 pero es muy difícil entender cómo se comunican internamente estos displays LCD. 11 00:01:07,379 --> 00:01:13,939 El montaje, si yo le doy a iniciar, lo veis, nos aparece un texto que os hablamos de izquierda a derecha 12 00:01:13,939 --> 00:01:17,799 y veis que cada uno de estos rectángulos sería un carácter que podemos añadir. 13 00:01:18,159 --> 00:01:22,120 Como hemos dicho que tenía 16 columnas por dos filas, serían 32 en total. 14 00:01:22,980 --> 00:01:28,959 En cuanto a la explicación de los pines, serían estos que aparecen aquí 15 00:01:28,959 --> 00:01:31,480 y veis 16 00:01:31,480 --> 00:01:33,680 el VSS sería el de tierra 17 00:01:33,680 --> 00:01:35,200 hay varios de tierra 18 00:01:35,200 --> 00:01:37,599 el VO que también sería 19 00:01:37,599 --> 00:01:39,040 el de contraste 20 00:01:39,040 --> 00:01:40,980 normalmente se le pone un potenciómetro 21 00:01:40,980 --> 00:01:43,459 no se lo ha añadido 22 00:01:43,459 --> 00:01:45,980 luego tenemos el VDD que sería el de alimentación 23 00:01:45,980 --> 00:01:47,219 que sería los 5 voltios 24 00:01:47,219 --> 00:01:49,640 iría conectado a los 5 voltios de la placa de arduino 25 00:01:49,640 --> 00:01:51,219 el RS 26 00:01:51,219 --> 00:01:52,879 que sería la selección de datos 27 00:01:52,879 --> 00:02:00,079 que comunicaría con el Arduino, ya veremos cómo. 28 00:02:00,560 --> 00:02:04,299 Luego el RW de read y write, que sería lectura y escritura, 29 00:02:04,299 --> 00:02:12,080 que va conectado al GND, el E-enable para activar o desactivar el LCD. 30 00:02:13,180 --> 00:02:16,879 Luego veremos que va a un pin de Arduino. 31 00:02:17,800 --> 00:02:22,520 Luego tendríamos el D0 al D3, que serían datos pero no usados en 4-pin, 32 00:02:22,520 --> 00:02:25,180 4 bits, como lo vamos a usar en 4 bits 33 00:02:25,180 --> 00:02:26,879 solo vamos a utilizar de los datos 34 00:02:26,879 --> 00:02:28,479 que son del D0 al D7 35 00:02:28,479 --> 00:02:30,819 utilizaremos el D4 al D7 36 00:02:30,819 --> 00:02:32,659 esos 4 pines, que van conectados 37 00:02:32,659 --> 00:02:34,500 a 4 pines en Arduino 38 00:02:34,500 --> 00:02:36,919 y luego por último tenemos, puesto que esto 39 00:02:36,919 --> 00:02:38,620 tiene un LED para que se encienda 40 00:02:38,620 --> 00:02:41,099 la luz y podamos ver el texto 41 00:02:41,099 --> 00:02:42,840 tendrá pues como 42 00:02:42,840 --> 00:02:44,620 todo LED, un ánodo y un cátodo 43 00:02:44,620 --> 00:02:46,740 el ánodo es el 44 00:02:46,740 --> 00:02:48,520 ánodo de fondo positiva en el que 45 00:02:48,520 --> 00:02:51,139 sería la carga positiva 46 00:02:51,139 --> 00:02:54,800 acordaos de los LED, y iría unido a 5 voltios para que sea alimentado. 47 00:02:55,120 --> 00:02:58,259 Pero importante ponerle una resistencia, porque esto es como un LED igual. 48 00:02:58,659 --> 00:03:02,259 Y luego el cátodo, que sería la carga negativa, o luz de fondo carga negativa, 49 00:03:02,259 --> 00:03:06,240 que sería unida lógicamente a GND, como pasaba en los LED. 50 00:03:07,580 --> 00:03:14,300 Bien, una vez que ya tenemos esto, vamos a hacerlo desde el principio. 51 00:03:14,680 --> 00:03:17,000 ¿Veis? Todos esos pines que os he nombrado están aquí. 52 00:03:17,300 --> 00:03:20,900 Los de datos serían desde el D0 al D7, que serían estos de aquí. 53 00:03:21,139 --> 00:03:26,520 los del LED serían estos dos, que este sería el del ánodo y este sería el del cátodo, 54 00:03:27,219 --> 00:03:30,599 luego tenemos el Enable, que lo hemos dicho, luego el de lectura y escritura, 55 00:03:30,599 --> 00:03:38,080 y luego el GND, que sería tierra, y VCC, que sería alimentación o potencia a 5 voltios. 56 00:03:38,780 --> 00:03:42,919 Bien, vamos a empezar un proyecto de nuevo, para darle al proyecto nuevo, 57 00:03:43,520 --> 00:03:49,939 no lo dije en otros vídeos, pero si veis aquí, teníamos dos pestañas 58 00:03:49,939 --> 00:03:56,520 en el que nos permite ver el esquema total o una vista esquemática del circuito. 59 00:03:57,400 --> 00:04:02,379 Bien, lo que vamos a hacer ahora, este otro icono sería para la lista de componentes, 60 00:04:02,460 --> 00:04:06,560 tampoco lo había dicho, pero sí aquí lo podemos dar para que nos haga la lista de componentes. 61 00:04:07,099 --> 00:04:10,460 Le damos al icono de Tinkercad para generar un nuevo proyecto. 62 00:04:11,500 --> 00:04:14,039 Le damos a crear y le damos a circuitos. 63 00:04:18,240 --> 00:04:22,120 Bien, ya tenemos, vamos a ir deprisa porque esto ya lo hemos visto. 64 00:04:22,120 --> 00:04:27,519 no es más que arrastrar los tres elementos que necesitamos que sería el como aquí no están todos 65 00:04:27,519 --> 00:04:33,899 está el básico pondremos todos y nos aparecería el lcd arrastramos el lcd y vamos a ponerlo aquí 66 00:04:33,899 --> 00:04:40,600 porque es mucho más cómodo para visualizarlo bien lo único primero que lo que vamos a hacer es la 67 00:04:40,600 --> 00:04:47,959 placa la seleccionamos y la giramos con la intención de que esto no se crucen demasiados 68 00:04:47,959 --> 00:04:54,800 cables y sea mucho más fácil de ver lo primero que vamos a hacer es alimentar el tierra y 69 00:04:54,800 --> 00:05:02,879 alimentación a través de la placa de pruebas entonces lo que haremos es primero una una línea 70 00:05:02,879 --> 00:05:09,839 que nos lleve hasta los 5 voltios de la placa de arduino que sería la de alimentación y que va a 71 00:05:09,839 --> 00:05:20,139 la línea positiva como siempre y lo pondremos de color rojo bien a continuación la línea de 72 00:05:20,139 --> 00:05:31,930 gnd la vamos a unir al gnd y tendríamos la línea negra ya tenemos cerrado el circuito con los dos 73 00:05:31,930 --> 00:05:37,209 vamos a poner esto mejor ya tenemos cerrado el circuito con las dos líneas y alimentadas estas 74 00:05:37,209 --> 00:05:44,670 las líneas tanto con cero voltios como cinco voltios para poder anclarnos a ellas. A continuación 75 00:05:44,670 --> 00:05:49,790 vamos uno a uno pues cada uno de los pines para configurarlo. Este si pone GND lógicamente iría 76 00:05:49,790 --> 00:05:55,569 a dónde? Iría hasta la línea de GND. Bien, el VCC hemos dicho que era alimentación y por tanto iría 77 00:05:55,569 --> 00:06:00,750 a la línea de alimentación. Le ponemos de color rojo y ya lo tendríamos. Bien, ¿qué más líneas 78 00:06:00,750 --> 00:06:21,209 Entonces necesitamos ahora el VO que tendríamos que iba a GND, si lo vamos viendo en la propia tabla, el VO es el contraste, iría con un potenciómetro pero lo voy a hacer sin potenciómetro, pero va al GND. 79 00:06:21,209 --> 00:06:33,769 Bien, a continuación tendríamos el RS, que era la selección de datos y esta selección de datos tiene que ir a un pin de Arduino 80 00:06:33,769 --> 00:06:45,550 Bien, entonces lo que vamos a hacer es llevar este RS a un pin y vamos a poner que este sería el pin 2 81 00:06:45,550 --> 00:06:50,930 para que no se nos haga 82 00:06:50,930 --> 00:06:54,009 vamos a cerrarlo lo más posible 83 00:06:54,009 --> 00:06:56,110 iría este al 2 84 00:06:56,110 --> 00:07:02,250 vamos a coger para utilizar los pines de Arduino 85 00:07:02,250 --> 00:07:04,949 vamos a utilizar, como vamos a necesitar 6 pines 86 00:07:04,949 --> 00:07:09,449 vamos a coger del 2 al 2, 4 hasta el 7 87 00:07:09,449 --> 00:07:12,889 bien, los ponemos de otro color para diferenciar los de línea de masa 88 00:07:12,889 --> 00:07:17,709 y la línea de alimentación 89 00:07:17,709 --> 00:07:39,970 Y este sería el primero. La lectura de escritura, este nos iría también a GND, le ponemos de color negro para identificarlo. Si vamos a la lectura de escritura y va al GND, lo veis, el RW. A continuación nos quedaría el Enable para activar el LCD o desactivarlo. Y este sí va a un pin. Entonces vamos a seguir con los pines que teníamos. 90 00:07:39,970 --> 00:07:42,829 Hemos cogido el 2, pues vamos hasta el 3. 91 00:07:44,470 --> 00:07:49,449 Le ponemos mejor y le ponemos de color verde también para distinguir los de los demás. 92 00:07:50,069 --> 00:07:51,449 Bien, pasamos a la línea de datos. 93 00:07:51,610 --> 00:07:56,050 Hemos dicho que para 4 bits solo se utilizaban los últimos 4, del 4 al 7. 94 00:07:56,209 --> 00:08:02,750 Entonces vamos a coger primero el pin 4 y llevamos a otro pin en Arduino. 95 00:08:08,420 --> 00:08:12,240 Como vamos en línea, iríamos al 4, le ponemos en el 4. 96 00:08:12,240 --> 00:08:22,160 Y a continuación vamos poniendo todos en... vamos a mover un poquito el circuito para que nos quepa. 97 00:08:22,420 --> 00:08:27,839 Vamos poniendo el de 5. Todos estos tenían que ir directamente a pines de Arduino. 98 00:08:28,279 --> 00:08:46,590 Entonces seguimos en la línea y cogemos el 5. Luego cogemos el 6 y el 7. 99 00:08:50,370 --> 00:08:55,830 Ahora hago un repaso para que veáis lo que estoy haciendo con estos cuatro pines de datos. 100 00:08:55,830 --> 00:09:06,590 Hemos visto que los pines de datos iban, los 4 de 4 bits, que serían del 4 al 7, pues van unidos a la placa de Arduino a través de pines. 101 00:09:07,129 --> 00:09:11,490 Bien, ya los tenemos los 4 y hago un resumen. 102 00:09:11,730 --> 00:09:21,769 Tengo los 4 pines, tengo los 6 pines que hemos utilizado de Arduino, tenemos el RS, lectura y escritura, que iría al pin 2, 103 00:09:21,769 --> 00:09:24,570 el enable que va al pin 3 104 00:09:24,570 --> 00:09:26,909 y luego los 4 de datos de 4 bits 105 00:09:26,909 --> 00:09:28,350 irían del 4 al 7 106 00:09:28,350 --> 00:09:30,690 y van conectados en el 4 107 00:09:30,690 --> 00:09:32,549 en el 5, en el 6 y en el 7 108 00:09:32,549 --> 00:09:34,370 bien, solo nos quedarían 109 00:09:34,370 --> 00:09:36,190 a continuación los LED 110 00:09:36,190 --> 00:09:37,470 para que se encienda la luz 111 00:09:37,470 --> 00:09:39,330 de la propia pantalla o display 112 00:09:39,330 --> 00:09:41,610 igual que un LED que vimos 113 00:09:41,610 --> 00:09:43,830 el ánodo estaba unido a una resistencia 114 00:09:43,830 --> 00:09:45,070 y el cátodo estaba unido 115 00:09:45,070 --> 00:09:47,750 a alimentación 116 00:09:47,750 --> 00:09:50,090 entonces este lo llevamos a alimentación 117 00:09:50,090 --> 00:09:51,590 y lo ponemos de color 118 00:09:51,590 --> 00:09:53,649 rojo y este iría 119 00:09:53,649 --> 00:09:55,470 a la línea de masa 120 00:09:55,470 --> 00:09:57,470 pero necesitaría de una resistencia 121 00:09:57,470 --> 00:09:59,830 acuerdaos en los LED era exactamente igual 122 00:09:59,830 --> 00:10:01,950 entonces necesitaríamos una resistencia 123 00:10:01,950 --> 00:10:04,029 que vimos que con que fuera la resistencia 124 00:10:04,029 --> 00:10:04,370 de 125 00:10:04,370 --> 00:10:07,750 la vamos a conectar 126 00:10:07,750 --> 00:10:08,129 aquí 127 00:10:08,129 --> 00:10:11,610 directamente, veis la resistencia 128 00:10:11,610 --> 00:10:13,590 está conectada directamente a la línea de masa 129 00:10:13,590 --> 00:10:15,610 aquí no haría falta 130 00:10:15,610 --> 00:10:17,149 poner un cable porque ya tenemos que 131 00:10:17,149 --> 00:10:19,490 poner un cable aquí 132 00:10:19,490 --> 00:10:21,509 y le pondremos de color negro 133 00:10:21,509 --> 00:10:24,590 ya estaría conectado toda la línea hasta la línea de masa 134 00:10:24,590 --> 00:10:29,210 la resistencia la vamos a poner de 220 ohmios como utilizábamos en los LED 135 00:10:29,210 --> 00:10:31,850 y tendríamos ya puesta 136 00:10:31,850 --> 00:10:36,809 y este sería todo el montaje en cuanto a la estructura del LCD 137 00:10:36,809 --> 00:10:39,350 ya con esto tendría que estar funcionando 138 00:10:39,350 --> 00:10:42,769 bien, si nosotros le damos a iniciar no nos va a hacer absolutamente nada 139 00:10:42,769 --> 00:10:45,049 porque todavía no le hemos puesto código a esto 140 00:10:45,049 --> 00:10:47,549 bien, ahora que es lo que vamos a hacer 141 00:10:47,549 --> 00:11:06,799 Vamos a poner y decirle que el texto que vaya a salir, vamos a borrar todo esto y voy explicando poco a poco cómo se va generando el texto para que esto imprima lo que nosotros queremos. 142 00:11:06,799 --> 00:11:20,919 Bien, lo primero que vamos a hacer es añadirle una librería, decir que en C++ para añadir una librería se utiliza este comando, include y se pone con esta estructura que acabo de poner. 143 00:11:20,919 --> 00:11:39,860 Vamos a dejar un Enter. Nos dice que va a incluir una librería que vamos a utilizar. Las librerías se ponen con estos ángulos y concretamente la que vamos a utilizar es Liquid Crystal, que sería para un LCD. 144 00:11:39,860 --> 00:11:49,700 Esta librería es la que vamos a utilizar y vamos a generar objetos de la misma y vamos a utilizar métodos de dicha librería para poder sacar el texto que hemos visto. 145 00:11:49,700 --> 00:12:06,480 Bien, a continuación, fuera vamos a generar un objeto Liquid Crystal. Este objeto le vamos a llamar LCD, por ejemplo. Este sería su nombre y va a tener varios parámetros. 146 00:12:06,480 --> 00:12:22,700 En principio los parámetros que va a tener irían en orden. Primero serían todos los parámetros de los pines que hemos conectado a la placa de Arduino. En principio sería el RS, que hemos dicho que era el número 2, y por tanto ponemos el número 2. 147 00:12:22,700 --> 00:12:28,779 Luego el enable, que hemos visto que era el pin 3, si lo he puesto en orden para facilitarlo. 148 00:12:29,179 --> 00:12:37,120 Y luego irían los cuatro pines de datos, van unidos al 4, 5, 6 y 7. 149 00:12:37,419 --> 00:12:40,960 Podemos hacer el 4, el 5, el 6 y el 7. 150 00:12:41,519 --> 00:12:43,980 Y con esto ya tendríamos el objeto LCD creado. 151 00:12:44,659 --> 00:12:47,299 Veis que este objeto creado necesita de todos estos parámetros. 152 00:12:48,000 --> 00:12:49,799 A continuación crearemos una cadena de texto. 153 00:12:49,799 --> 00:12:52,340 acordaos que una cadena de texto 154 00:12:52,340 --> 00:12:56,659 en C++ 155 00:12:56,659 --> 00:12:58,759 al igual que Java es un stream 156 00:12:58,759 --> 00:13:00,159 le vamos a llamar mensaje 157 00:13:00,159 --> 00:13:01,840 y este mensaje 158 00:13:01,840 --> 00:13:03,720 le vamos a poner 159 00:13:03,720 --> 00:13:05,600 hola 160 00:13:05,600 --> 00:13:10,460 lcd 161 00:13:10,460 --> 00:13:12,799 16x2 162 00:13:12,799 --> 00:13:16,919 la cadena de texto va 163 00:13:16,919 --> 00:13:19,039 entre comillas dobles y ya entraríamos 164 00:13:19,039 --> 00:13:20,100 dentro del void setup 165 00:13:20,100 --> 00:13:44,179 Vamos a utilizar el objeto que hemos creado arriba que se llamaba LCD, que sería este de aquí, que es un objeto liquid cristal y vamos a utilizar sus métodos. Entonces LCD, llamamos a sus métodos a través del operador punto y decimos que lo inicialice. Begin y le ponemos que lo queremos que sea de 16 columnas por dos filas. 166 00:13:44,179 --> 00:14:04,179 ¿Veis? Tiene dos parámetros para inicializarlo. Bien, una vez que lo hemos inicializado, vamos a decir dónde va a empezar el cursor para saber dónde va a escribir. El cursor, cuando lo hemos visto anteriormente, estaba formado por 16 caracteres y 16 caracteres en blanco. O sea, no aparecía nada. 16 rectángulos y 16 rectángulos. 167 00:14:04,179 --> 00:14:10,200 siempre empieza desde el 0, entonces esta posición sería el cursor en el 0,0 168 00:14:10,200 --> 00:14:16,000 o sea 0,0 fila y columna pues 0,0 169 00:14:16,000 --> 00:14:22,840 entonces vamos a posicionar ese cursor en el 0,0 para que con lcd.cursor 170 00:14:22,840 --> 00:14:31,990 set cursor le está diciendo colócame el cursor en qué posición 171 00:14:31,990 --> 00:14:35,450 en la posición 0,0 172 00:14:35,450 --> 00:14:38,289 bien, una vez que ya hemos seleccionado 173 00:14:38,289 --> 00:14:39,690 donde va a empezar, que sería aquí 174 00:14:39,690 --> 00:14:41,549 a continuación vamos a 175 00:14:41,549 --> 00:14:43,769 con el mismo objeto, llamar a su 176 00:14:43,769 --> 00:14:45,850 método print, para que me imprima 177 00:14:45,850 --> 00:14:47,450 el texto que yo quiero que 178 00:14:47,450 --> 00:14:49,169 aparezca en el LCD 179 00:14:49,169 --> 00:14:52,029 ese texto va a ser la cadena 180 00:14:52,029 --> 00:14:53,549 que hemos creado, el string 181 00:14:53,549 --> 00:14:56,149 mensaje, le ponemos mensaje 182 00:14:56,149 --> 00:14:58,029 y ya lo 183 00:14:58,029 --> 00:14:59,750 tendríamos, que más vamos a poner 184 00:14:59,750 --> 00:15:01,309 como queremos también 185 00:15:01,309 --> 00:15:03,649 que me escriba debajo 186 00:15:03,649 --> 00:15:06,330 otro texto en la segunda 187 00:15:06,330 --> 00:15:08,529 este texto concreto 188 00:15:08,529 --> 00:15:10,870 aparecerá en la primera fila 189 00:15:10,870 --> 00:15:12,830 pero yo creo que en la segunda fila me aparezca otro texto 190 00:15:12,830 --> 00:15:14,490 entonces ahora situamos el cursor 191 00:15:14,490 --> 00:15:16,830 en este 192 00:15:16,830 --> 00:15:18,549 otro rectángulo que empiece 193 00:15:18,549 --> 00:15:19,929 a contar desde aquí 194 00:15:19,929 --> 00:15:21,690 entonces le pongo lcd 195 00:15:21,690 --> 00:15:23,370 punto 196 00:15:23,370 --> 00:15:25,750 set cursor 197 00:15:25,750 --> 00:15:29,539 y le pongo 198 00:15:29,539 --> 00:15:31,919 ahora que sea en el 199 00:15:31,919 --> 00:15:32,480 01 200 00:15:32,480 --> 00:15:42,860 ¿Por qué? Porque le está indicando que se coloque en la columna 0, que sería esta de aquí 201 00:15:42,860 --> 00:15:48,519 Y en la fila 1, porque esta fila sería la fila 0 y esta sería la fila 1 202 00:15:48,519 --> 00:15:51,659 Porque ya he dicho que las filas y las columnas las empieza siempre por 0 203 00:15:51,659 --> 00:15:57,600 Como la fila iría del 0 al 15, puesto que combinan 0 y son 16 posiciones 204 00:15:57,600 --> 00:16:04,679 y las columnas van del 0 al 15 y las filas irían del 0 al 1. 205 00:16:04,980 --> 00:16:07,940 Esta sería la fila 1, 0 y esta sería la fila 1. 206 00:16:08,399 --> 00:16:14,159 Entonces le estoy diciendo, colócame en la columna 0 y en la fila 1, que sería aquí. 207 00:16:14,720 --> 00:16:18,360 Bien, una vez que hemos colocado ahí, ahora imprimiríamos con el objeto LCD, 208 00:16:18,580 --> 00:16:23,360 llamamos a su método print y le decimos que nos ponga otro texto. 209 00:16:23,360 --> 00:16:25,059 Por ejemplo, modo paralelo. 210 00:16:25,059 --> 00:16:27,799 modo 211 00:16:27,799 --> 00:16:30,059 paralelo 212 00:16:30,059 --> 00:16:33,039 y vamos a quitarle 213 00:16:33,039 --> 00:16:34,720 aquí el espacio y lo ponemos así 214 00:16:34,720 --> 00:16:36,320 bien, a continuación 215 00:16:36,320 --> 00:16:38,539 queremos que esté continuamente 216 00:16:38,539 --> 00:16:39,960 esto sería toda la configuración 217 00:16:39,960 --> 00:16:42,779 en el setup, que acordaos que 218 00:16:42,779 --> 00:16:44,580 solo se leía este método una sola vez 219 00:16:44,580 --> 00:16:46,379 cuando se inicia la simulación 220 00:16:46,379 --> 00:16:49,120 cuando queremos que lo repita 221 00:16:49,120 --> 00:16:51,159 de manera continua lo haremos a través del loop 222 00:16:51,159 --> 00:16:53,100 entonces para que se desplace el texto 223 00:16:53,100 --> 00:16:54,759 que queremos, eso se le realiza 224 00:16:54,759 --> 00:16:56,879 a través del objeto LCD con su método 225 00:16:56,879 --> 00:16:57,580 scroll 226 00:16:57,580 --> 00:17:02,159 scroll display 227 00:17:02,159 --> 00:17:05,240 left 228 00:17:05,240 --> 00:17:08,279 porque queremos que se mueva de izquierda a derecha 229 00:17:08,279 --> 00:17:09,779 si pusiéramos 230 00:17:09,779 --> 00:17:11,180 ahora lo modificaremos 231 00:17:11,180 --> 00:17:12,579 si ponemos right 232 00:17:12,579 --> 00:17:14,200 scroll 233 00:17:14,200 --> 00:17:17,779 display right 234 00:17:17,779 --> 00:17:19,680 iría de derecha a izquierda 235 00:17:19,680 --> 00:17:21,440 le decimos que lo haga 236 00:17:21,440 --> 00:17:23,619 cada un cierto tiempo y acordaos que 237 00:17:23,619 --> 00:17:24,420 el método delay 238 00:17:24,420 --> 00:17:27,279 lo que hacía es que 239 00:17:27,279 --> 00:17:29,039 paraba 240 00:17:29,039 --> 00:17:31,579 un cierto tiempo 241 00:17:31,579 --> 00:17:33,579 la ejecución, esto venía en milisegundos 242 00:17:33,579 --> 00:17:35,539 acordaos, y después de esos 243 00:17:35,539 --> 00:17:37,140 milisegundos pues seguía 244 00:17:37,140 --> 00:17:39,220 con la ejecución del mismo 245 00:17:39,220 --> 00:17:41,660 entonces vamos a ponerle 250 milisegundos 246 00:17:41,660 --> 00:17:43,279 que es un cuarto de segundo 247 00:17:43,279 --> 00:17:45,480 bien, ya tendríamos todo el código 248 00:17:45,480 --> 00:17:46,920 si yo quito el código 249 00:17:46,920 --> 00:17:49,299 y le doy a iniciar 250 00:17:49,299 --> 00:17:51,440 nos tendrá que aparecer, si todo lo hemos 251 00:17:51,440 --> 00:17:53,160 hecho bien, algo he puesto mal aquí 252 00:17:53,160 --> 00:17:55,960 Ah, bien 253 00:17:55,960 --> 00:17:58,339 No lo he puesto 254 00:17:58,339 --> 00:17:59,980 Cuando metemos una librería 255 00:17:59,980 --> 00:18:01,539 Siempre las librerías en C++ 256 00:18:01,539 --> 00:18:03,920 Tienen un archivo de cabecera 257 00:18:03,920 --> 00:18:05,279 Por eso esos archivos 258 00:18:05,279 --> 00:18:07,779 De cabecera son 259 00:18:07,779 --> 00:18:09,940 .h, .h de header 260 00:18:09,940 --> 00:18:11,960 De cabecera, este archivo de cabecera 261 00:18:11,960 --> 00:18:14,140 En C++ define 262 00:18:14,140 --> 00:18:16,200 Cuáles son las variables 263 00:18:16,200 --> 00:18:18,500 Métodos, etcétera, de esta librería 264 00:18:18,500 --> 00:18:19,619 Entonces 265 00:18:19,619 --> 00:18:21,460 Cuando metemos una librería hay que tener 266 00:18:21,460 --> 00:18:24,599 hay que ponerle esta extensión .h 267 00:18:24,599 --> 00:18:25,779 y era lo que nos faltaba 268 00:18:25,779 --> 00:18:28,680 bien, una vez que liquidcrystal.h está bien 269 00:18:28,680 --> 00:18:30,440 no debería haber ningún problema 270 00:18:30,440 --> 00:18:31,880 y vamos a ejecutarlo 271 00:18:31,880 --> 00:18:32,799 si veis 272 00:18:32,799 --> 00:18:37,740 el texto está saliendo 273 00:18:37,740 --> 00:18:39,660 ahora mismo en pantalla 274 00:18:39,660 --> 00:18:40,819 y estaría saliendo 275 00:18:40,819 --> 00:18:42,079 de manera 276 00:18:42,079 --> 00:18:45,680 con la fila que hemos puesto en el cursor 00 277 00:18:45,680 --> 00:18:48,140 y la fila que ha salido 278 00:18:48,140 --> 00:18:49,759 en el 01 que era modo paralelo 279 00:18:49,759 --> 00:18:51,380 sale de izquierda a derecha 280 00:18:51,380 --> 00:18:53,599 y se va moviendo cada cuarto de segundo 281 00:18:53,599 --> 00:18:57,339 si yo modifico el código y le digo que ahora lo haga hacia la derecha 282 00:18:57,339 --> 00:19:00,180 y le pongo scroll display right 283 00:19:00,180 --> 00:19:06,240 esto lo hará del mismo modo pero lo hará de izquierda a derecha 284 00:19:06,240 --> 00:19:14,180 y esto sería todo en cuanto a lo que es un LCD 16x2 285 00:19:14,180 --> 00:19:18,799 para terminar voy a comentar todo el código para que nos quede claro 286 00:19:18,799 --> 00:19:43,750 Esto, acordaos, un comentario en C++, lo voy a poner encima, se pone con dos barras inclinadas. Este sería, incluimos la librería, que sería, incluimos la librería líquido y cristal, ya hemos dicho, con excepción .h. 287 00:19:43,750 --> 00:20:06,700 A continuación, definimos, o mejor dicho, creamos un objeto liquid cristal para utilizar todos sus métodos. 288 00:20:06,880 --> 00:20:11,259 Ese objeto liquid cristal necesita de todos estos parámetros que son los seis pins que hemos utilizado. 289 00:20:11,259 --> 00:20:21,210 El segundo sería, creamos una cadena de tipo string. 290 00:20:23,029 --> 00:20:28,450 Bien, pasamos al voice setup y en el voice setup, que se lee solo una vez, 291 00:20:31,900 --> 00:20:36,460 método se lee una sola vez, 292 00:20:36,460 --> 00:20:46,220 utilizamos distintos métodos del objeto liquid cristal llamado LCD 293 00:20:46,220 --> 00:20:48,700 el primero sería inicialización 294 00:20:48,700 --> 00:20:53,160 inicializa el LCD 295 00:20:53,160 --> 00:20:57,819 le está diciendo que sea de 16 columnas por dos filas 296 00:20:57,819 --> 00:21:15,799 Posteriormente, coloca el cursor en la fila y columna 0, que sería aquí concretamente. 297 00:21:15,799 --> 00:21:39,789 posteriormente imprime la cadena mensaje a continuación modificamos el cursor y se lo pone 298 00:21:39,789 --> 00:21:42,430 Coloca el cursor ahora en la fila 299 00:21:42,430 --> 00:21:45,829 Utilizaría la fila 0 300 00:21:45,829 --> 00:21:46,869 Y columna 301 00:21:46,869 --> 00:21:50,569 Perdón, la fila 1 302 00:21:50,569 --> 00:21:52,630 Y columna 0 303 00:21:52,630 --> 00:21:55,109 Si veis lo pone al revés 304 00:21:55,109 --> 00:21:56,910 Primero pone la columna 305 00:21:56,910 --> 00:21:58,390 Y luego pone la fila 306 00:21:58,390 --> 00:22:00,650 Y luego pues la otra 307 00:22:00,650 --> 00:22:01,750 Pues haría lo mismo 308 00:22:01,750 --> 00:22:02,730 Imprime 309 00:22:02,730 --> 00:22:07,750 Aquí hemos puesto 310 00:22:07,750 --> 00:22:12,460 Imprime la cadena 311 00:22:12,460 --> 00:22:28,369 y nos quedaría aquí, que sería imprime el texto modo paralelo. 312 00:22:30,049 --> 00:22:34,329 Pasaríamos al loop y en el loop tendríamos que utilizar un objeto LCD. 313 00:22:34,730 --> 00:22:35,029 ¿Para qué? 314 00:22:35,029 --> 00:22:55,809 para utilizar o utiliza o mueve el texto de derecha a izquierda y bueno este sería con el 315 00:22:55,809 --> 00:23:10,970 left. Vamos a dejarlo con el left. Y por último, para la ejecución o pausa, pausa la ejecución 316 00:23:10,970 --> 00:23:21,130 cada cuarto de segundo. Y con esto tendríamos todo el código y todo finalizado. Para que 317 00:23:21,130 --> 00:23:30,349 veáis. Y le damos y nos saldría el texto moviéndose de izquierda a derecha. Lo he 318 00:23:30,349 --> 00:23:36,849 puesto aquí mal. De izquierda a