Guía de apoyo para resolución de practicas de laboratorio
El presente es un guiá de apoyo para la resolución de practicas de laboratorio, como un guiá adicional para entender y mejorar la comprensión de la resolución de ejercicios de laboratorio.
Memoria CGRAM
En muchas ocasiones es bueno tener mas que los caracteres estándar para mostrar por nuestra pantalla LCD por lo que se puede visualizar símbolos definidos por el usuario, es decir nosotros podemos realizar nuestros caracteres de tal modo que cumpla con nuestras necesidades.
Figura 01. Espacio de 5x8 pixeles con un carácter disenado por el usuario (Fuente www.mikroe.com)
Para ello podemos diseñar cualquier símbolo en un espacio de 5x8 píxeles. La memoria RAM denominada CGRAM de 64 bytes lo habilita con lo que podremos guardar dichos símbolos en dicha memoria. Los registros de memoria son de 8 bits de anchura, pero sólo se utilizan 5 bits más bajos.
Figura 02. 5 bits utilizados de 8 bits (Fuente www.mikroe.com)
Por lo que para ir diseñando nuestras figuras basta que coloquemos un uno lógico (1) en cada registro que representa un punto oscurecido, mientras que 8 localidades agrupados representan un carácter. Esto se muestra en la siguiente figura:
Figura 03. Comparación de bits habilitados (Fuente www.mikroe.com)
Diseñar un carácter para su visualización en una pantalla LCD.
Programa 01: Se pide un programa para mostrar un circulo por una pantalla LCD en la fila 1 y la fila 2, ocupando 2x2 celdas.
Paso 1: Primero vamos a crear un proyecto, luego de haber terminado con la configuración para trabajar con el microcontrolador:
Figura 04. Inicio de un nuevo programa (Fuente Autor)
Paso 2: Empecemos creando un programa, este deberá de tener tanto la etiqueta como la descripción del programa , ademas de la configuración para inicializar una pantalla LCD
Figura 05. Inicio del programa para visualizar en LCD (Fuente Autor)
Vamos a utilizar el puerto D , para mostrar nuestro carácter especial dejando al puerto B para utilizar para recuperar los datos con los que podremos trabajar.
Paso 3: Para crear un carácter especial vamos a seguir el siguiente guia:
Diseñando un carácter especial
Primero debemos de ir a Menu-→ Tools → LCD Custom Character
Figura 06. Inicio de un nuevo caracter (Fuente Autor)
Una vez ingresamos al generador de caracteres vamos a ver la siguiente pantalla:
Figura 07. Inicio del generador de caracteres LCD (Fuente Autor)
Vamos a ver que tenemos un lienzo limpio (aunque en mi caso muestra esto), puede que en tu caso muestre algo diferente. Pero para nuestro caso necesitamos mostrar un circulo por lo que dibujemos dicho circulo.
Figura 08. Fragmento de programa carácter LCD izqSuper (Fuente Autor)
Una vez tenemos este fragmento de código lo que vamos a copiaremos los siguiente
Figura 09. Fragmento de codigo carácter LCD (Fuente Autor)
A la cabecera de nuestro Programa principal:
Figura 10. Fragmento de codigo carácter LCD en MikroC (Fuente Autor)
Ahora copiamos el resto del código generado al programa principal tendremos que ver lo siguiente:
Figura 11. Fragmento de codigo carácter LCD en MikroC (Fuente Autor)
Ahora lo copiamos al simulador MikroC, lo colocaremos con una función externa al programa principal.
Figura 12. Fragmento de código carácter LCD en MikroC (Fuente Autor)
Ahora es momento de generar otro carácter especial:
Figura 13. Fragmento de código carácter LCD en izqInfer (Fuente Autor)
Ya muchos se habrán percatado que el programa que se genero tiene las mismas características a nuestro anterior carácter tanto en el nombre que es igual al anterior carácter que diseñamos entonces que vamos a hacer!!.
Figura 14. Fragmento de código carácter LCD en MikroC (Fuente Autor)
Lo primero cambiemos el nombre de nuestro carácter entonces vamos a nuestro programa principal:
Figura 15. Fragmento de código carácter LCD en MikroC (Fuente Autor)
Una vez completamos armemos el resto de la figura para mostrar por la pantalla LCD, primero conformemos el resto de la figura con la ayuda del generador de caracteres.
Figura 16. Fragmento de código carácter LCD derInfer (Fuente Autor)
Por ultimo tenemos la siguiente imagen:
Figura 17. Fragmento de código carácter LCD derSuper (Fuente Autor)
Al final en la parte superior de nuestro programa queda de la siguiente manera:
Figura 18. Fragmento de código carácters LCD (Fuente Autor)
Como habrán notado ahora nos que diseñar la función para representar los caracteres en la pantalla LCD, para ello para no repetir cada vez la función del carácter diseñado por nosotros, vamos a diseñar una función general que nos ayude a reducir dicho código un poco mas.
Figura 19. Fragmento de código MikroC (Fuente Autor)
Con ello vamos a poder trabajar con mas facilidad en la representación de nuestro circulo en nuestra pantalla LCD, veamos el código principal.
Figura 20. Fragmento de código MikroC (Fuente Autor)
Simulación en MikroC
Ahora simulemos el anterior Programa y con ello obtendremos los archivos necesarios para poder simular en proteus para poder visualizar nuestro programa:
Figura 21. Archivos para simulación (Fuente Autor)
Simulación en Proteus
Partamos de los archivos obtenidos empecemos su simulación en Proteus:
Figura 22. Simulación para carácter circulo en LCD (Fuente Autor)
Algunas observaciones
Tenemos que tener en mente lo siguiente:
1).- Para generar varios caracteres y no hacer mas extenso nuestro programa con las funciones de cada carácter lo mejor es generar una función general que englobe los caracteres.
2).- A partir de la dirección 64 se suma de 8 en 8 bits para cada carácter que nosotros vayamos diseñando para nuestro programa.
Bibliografia:
1.- Juan Ricardo Clavijo Mendoza, Diseño y simulación de sistemas microcontrolados en lenguaje C; Publicado el año 2011;[Fecha de consulta 24 de Mayo de 2020].
2.-Juan Ricardo Penagos Plazas; Cómo programar en lenguaje C los microcontroladores PIC16F88, 16F628A y 16F877A; Publicado el año 2010; [Fecha de consulta 28 de Mayo de 2020].
3.- Eduardo Garcia Breijio; Compilador_C_CCS_y_simulador_PROTEUS_para_microcontroladores_PIC; Publicado el año 2008; [Fecha de consulta 28 de Mayo de 2020].
Software utilizados:
1.- MikroC_PRO_PIC_2016_Build.6.6.3 descargado de la pagina oficial de Microchip.
2.- Proteus v 8.2 , simulado en linuxMint 19,4 por medio del programa Wine.
3.- Editor de texto libre, se puede descargar de Internet, es un editor GNU Linux.
4.- OpenProg , programador de microcontroladores PIC-AVR.
Hardware utilizados:
1.- Placa de Programación basado en los esquemas de OpenProg.
2.- Placa entrenadora desarrollado en base al microcontrolador Pic 18F4550.
3.- Placas modulo de leds , botoneras e interruptores.





















No hay comentarios.:
Publicar un comentario
Hola, con tu comentario puedes aportar para mejorar la calidad de mi trabajo