Carranza Inga Yadir Elmer
Carranza Inga Yadir Elmer
Carranza Inga Yadir Elmer
PERÚ
SEMESTRE: VI
HUANCAYO - PERU
2020
CAPITULO 2
Ejercicio 2.1. Prender y apagar un LED conectado en el puerto B0. El primer programa de
computadora que enseñan en programación y en la mayoría de lenguajes es imprimir en
la pantalla “Hola Mundo”.
Ejercicio 2.2. Prender y apagar los LEDS del puerto B. En el ejercicio 2.2, los LEDS conectados al
puerto B se prenden y apagan indefinidamente, como indica la figura 2.5. En este caso en el
programa todos los ocho bits de la localidad de memoria 0xF81 se asignan a la variable port_b, de
igual manera ocurre con el registro tris_b, con la localidad de memoria 0xF93.
Ejercicio 2.3. Prender y apagar los LEDS que están conectados al puerto B indefinidamente.
Ejercicio 2.5. Prende y apaga LED por el puerto RB0. En el programa para definir el estado en alto
del puerto se utiliza la función output_high(PIN_B0) y el estado en bajo la función
output_low(PIN_ B0). El registro TRIS no identifica con la dirección de memoria respectiva y se
hace referencia directamente para fijar al puerto B como salida con la instrucción set_tris_b
(00x00).
CAPITULO 3
Ejercicio 3.21. Manejo de teclado 4x3, modificando el driver KBD.C, utilizando PIC16F877A.
Notas: El archivo KBD.C, ha sido modificado y renombrado para utilizar el puerto B para el teclado
y el LCD en el puerto D. Para modificar el driver, abra el fichero KBD.C (se encuentra en el
directorio de instalación del PICC, carpeta Drivers) y retire los // que están en la línea de código
#define use_portb_kbd TRUE. Renombre por KBDB.C y está listo.
PROGRAMA:
Ejercicio 3.22. Manejo de teclado 4x3, definiendo el puerto desde el programa utilizando el driver
KBD.C y con PIC16F877A.
PROGRAMA:
Ejercicio 3.23. Manejo de la memoria EEPROM. En este ejercicio se almacena en la memoria
EEPROM a partir de la dirección 00 los números 3, 5, 1, 7, 2, utilizando la directiva #rom.
PROGRAMA:
Ejercicio 3.1. Contador de 0 a 9 utilizando un decodificador y display. En este caso los datos de un
contador realizado en un bucle FOR, se pueden sacar directamente al puerto y el decodificador se
encarga de convertirlos en 7 segmentos. La variable i se incrementa en 1 cada 500 ms y este valor
es asignado al puerto b (port_b= i;)
Ejercicio 3.2. Contador MOD 10, manejando directamente el display de 7 segmentos con el
microcontrolador. Los datos mostrados en la tabla 3.1 deben ser enviados directamente al puerto
para activar los segmentos según el número indicado. Para esto en el programa en una constante
tipo array se almacenan los valores codificados: const int x[]= {64,121,36,48,25,18,2,120,0,16};
Ejercicio 3.3. Manejo de dos display por principio de multiplexación
Ejercicio 3.4. Manejo del módulo LCD por el Puerto D. Algunos aspectos importantes para manejar
el LCD son: • Incluir la librería que maneja el LCD: #include • Inicializar el LCD: lcd_init(); esta
instrucción “arranca” el LCD. • Situar el cursor en la posición columna y fila desde donde se
visualice los caracteres: lcd_gotoxy(4,1); en este caso está indicando que empiece en la columna 4
fila 1. • Escribir el mensaje: lcd_putc(“HOLA MUNDO!!\n LCD en CCS”). En la instrucción el
argumento \n. Por tanto, en la primera fila a partir de la columna 4 en el LCD se indicará la palabra
HOLA MUNDO!!, y en la segunda fila a partir de la columna 4 se mostrará LCD en CCS. Cada
espacio en blanco que separa los caracteres o leras (\n LCD) ocupan una posición en las columnas
del LCD.
Ejercicio 3.6. Módulo LCD usando el puerto B.
a)
b)
Ejercicio 3.7. Desplazamiento texto a la izquierda.
Ejercicio 3.8. Desplazamiento del texto hacia la derecha.
Ejercicio 3.9. En el siguiente programa se utiliza las funciones de inicialización del GLCD y de
cambio del color de la pantalla.
Ejercicio 3.10. Graficar cuatro puntos en los límites de las esquinas de la pantalla del GLCD.
3.12
Ejercicio 3.13. Dibujar un rectángulo relleno en toda la pantalla del GLCD.
CAPITULO 4