1 00:00:00,460 --> 00:00:07,919 Hola, en este vídeo os voy a explicar la siguiente tarea que debéis realizar en vuestro proyecto del generador de funciones. 2 00:00:09,080 --> 00:00:14,880 Bueno, en el punto actual de trabajo ya tenemos diseñadas las siguientes funciones. 3 00:00:15,160 --> 00:00:24,440 Por un lado, tenemos el selector de forma de onda ya terminado, por el cual al darle a este pulsador elegís la forma de onda. 4 00:00:25,440 --> 00:00:34,820 Asimismo, indicamos por medio de este pin de control de ganancia cuando tenemos una señal senoidal o triangular y cuando la tenemos cuadrada. 5 00:00:35,820 --> 00:00:42,579 Y una segunda función muy importante del generador es la del encoder rotativo. También está diseñado completo. 6 00:00:42,799 --> 00:00:51,859 Por un lado, lo tenemos programado para que al girar de derecha hacia la derecha la frecuencia aumente, al girar hacia la izquierda la frecuencia disminuya. 7 00:00:51,859 --> 00:00:56,859 Y por medio de este pulsador elegimos el salto cada vez que aplicamos un giro. 8 00:00:58,990 --> 00:00:59,929 ¿Cuál es el siguiente paso? 9 00:01:00,210 --> 00:01:11,890 El siguiente paso consiste en programar el display LCD donde vamos a ver las características de funcionamiento o los parámetros de funcionamiento del generador de funciones. 10 00:01:11,890 --> 00:01:25,049 Para ello ya eliminamos en la simulación el simulador de terminal virtual que teníamos conectado en el pin 0 y 1 y lo vamos a sustituir por el display LCD que vamos a utilizar. 11 00:01:25,909 --> 00:01:33,269 Se trata de un display LCD que tiene dos filas y 16 columnas y tiene conexión I2C. 12 00:01:33,269 --> 00:01:47,129 El I2C significa que por medio de dos hilos podemos conectar al Arduino dicho display sin tener que utilizar la cantidad de pines que utiliza un display LCD normal. 13 00:01:47,730 --> 00:01:55,290 Asimismo, el estándar I2C nos va a permitir conectar en este bus, si quisiéramos, más dispositivos. 14 00:01:55,409 --> 00:02:00,549 Por ejemplo, podríamos conectar a los mismos cables dos o tres displays, que no es el caso. 15 00:02:03,269 --> 00:02:08,849 Para configurar este display LCD es necesario establecer una dirección. 16 00:02:09,069 --> 00:02:10,530 Estos displays tienen una dirección. 17 00:02:11,030 --> 00:02:17,189 Entonces el display que vais a utilizar vosotros normalmente utiliza la dirección 27 hexadecimal. 18 00:02:17,409 --> 00:02:23,469 Para que la simulación funcione correctamente tendremos que indicar esa dirección en nuestro display LCD. 19 00:02:23,810 --> 00:02:26,930 Por lo tanto haremos doble clic sobre dicho display. 20 00:02:27,689 --> 00:02:32,050 Y aquí en las propiedades avanzadas tenemos una opción que pone Device Address. 21 00:02:32,050 --> 00:02:38,689 Nos metemos y aquí escribimos un 27 para que pueda reconocer esa función. 22 00:02:40,990 --> 00:02:46,770 Una vez dicho esto, ¿qué tendríamos que representar en nuestro display LCD? 23 00:02:47,030 --> 00:02:50,689 En nuestro display LCD tenemos que representar varias cosas. 24 00:02:51,009 --> 00:02:57,909 En primer lugar, representaremos o debemos indicar la forma de la señal que tenemos en ese momento a la salida. 25 00:02:57,990 --> 00:02:59,909 Si tenemos senoidal, triangular o cuadrada. 26 00:03:00,770 --> 00:03:05,509 Por otro lado, debemos indicar la frecuencia que establecemos con nuestro encoder. 27 00:03:06,069 --> 00:03:11,870 Y lo vamos a hacer de tal forma que por defecto la frecuencia entregada por el generador sea 1 kHz. 28 00:03:12,449 --> 00:03:19,490 Por otro lado, debemos indicar el factor de salto que estamos estableciendo, si estamos haciéndolo por 1, por 10, por 100 o por 1000. 29 00:03:20,789 --> 00:03:27,830 Y por último, también en nuestro display LCD debemos informar tanto de la tensión de salida como de la tensión de offset. 30 00:03:27,830 --> 00:03:37,490 De todos estos parámetros que os digo, ahora mismo podéis únicamente representar en pantalla de forma precisa tres de ellos, los tres primeros que os he dicho. 31 00:03:38,310 --> 00:03:52,189 Los otros dos correspondientes a la tensión de salida y a la de offset no vais a poder representarlos ahora mismo porque para eso necesitamos tener ya el generador totalmente funcionando y tenemos que hacer unas medidas de calibración. 32 00:03:52,189 --> 00:04:01,229 Pero sí que vamos a dejar el hueco para ello, para que luego en el futuro simplemente lo que hagamos será hacer un print aquí de los valores correspondientes. 33 00:04:02,229 --> 00:04:12,270 Bueno, pues una vez descrito las características que tendría el display LCD, vamos a proceder a la simulación para que lo veáis. 34 00:04:13,969 --> 00:04:17,490 Le damos a la simulación y la idea sería la siguiente. 35 00:04:17,490 --> 00:04:26,850 La idea es que en el setup nos dé un mensaje de bienvenida y una vez entrados en el loop tendríamos una estructura de este tipo. 36 00:04:27,050 --> 00:04:33,149 Esta estructura luego vosotros la podéis mejorar, la podéis cambiar, lo que queráis. Esto es simplemente una idea. 37 00:04:34,129 --> 00:04:40,990 Bueno, ¿qué vemos aquí? Pues mirad, vemos en primer lugar aquí tres letras que nos van a indicar la forma de onda que tenemos a la salida. 38 00:04:40,990 --> 00:04:55,370 ¿Veis? Y ahora mismo por defecto senoidal. Si yo pulso, tendría triangular, tendría cuadrada, ¿vale? Tendría senoidal, triangular, cuadrada. Es decir, voy estableciendo la forma de onda a la salida, ¿vale? 39 00:04:56,129 --> 00:05:00,670 Bien, por otro lado, esto sería el factor de multiplicación. 40 00:05:00,769 --> 00:05:03,629 Ahora mismo, por defecto, está puesto en que sea por 1. 41 00:05:03,709 --> 00:05:07,129 Es decir, que al girar el encoder rotativo se me vaya incrementando de 1 en 1. 42 00:05:07,389 --> 00:05:11,370 Si yo pulso, pues este factor de multiplicación lo puedo ir cambiando. 43 00:05:11,509 --> 00:05:17,310 Será por 10, por 100, por 1000, por 10000 y volveríamos otra vez por 1. 44 00:05:18,410 --> 00:05:24,730 Si ahora activo el movimiento del encoder, veis, pues vamos, es como si estuviéramos moviendo hacia la derecha. 45 00:05:24,730 --> 00:05:31,050 pues veis que me va incrementando la frecuencia de 1 en 1. Si le doy al botón de salto, lo haría de 10 en 10. 46 00:05:31,589 --> 00:05:44,899 Si le vuelvo a dar, de 100 en 100. Y así sucesivamente. Si cambio el sentido de giro, la frecuencia disminuiría, como tiene que ser. 47 00:05:45,180 --> 00:05:48,980 Y así estableceríamos la frecuencia adecuada. 48 00:05:48,980 --> 00:05:56,480 bueno pues esta sería básicamente lo que tendríais que programar a continuación 49 00:05:56,480 --> 00:05:57,959 el display LCD 50 00:05:57,959 --> 00:06:01,379 bueno pues nada, chao chicos