Está en la página 1de 13

DEPARTAMENTO DE ELECTRICA Y ELECTRONICA

INGENIERÍA EN ELECTRÓNICA AUTOMATIZACIÓN


Y CONTROL

NRC: 3616

Asignatura: Microcontroladores

Practica 3.1

Tema: Teclado Matricial

Integrantes:
Andrés Zapata
Juan Mena

Docente: Ing. Elember Guanoluiza

Sangolquí, 01 de agosto de 2017


1. TEMA: Teclado Matricial

2. OBJETIVOS

GENERAL
- Realizar la implementación de 16 displays multiplexados con el
software PIC Simulator Ide y el PIC 16F877A, para mostrar el
desplazamiento de cualquier palabra en los displays.

ESPECÍFICOS

- Visualizar la palabra en movimiento de los displays.


- Realizar el control del velocidad de activación de cada displays para
poder visualizar la palabra completa

3. MARCO TEÓRICO

MICROCONTROLADOR PIC16F877A

El microcontrolador PIC16F877 de Microchip pertenece a una gran familia de


microcontroladores de 8 bits (bus de datos) que tienen las siguientes
características generales que los distinguen de otras familias:

- Arquitectura Harvard

- Tecnología RISC

- Tecnología CMOS

Estas características se conjugan para lograr un dispositivo altamente eficiente


en el uso de la memoria de datos y programa y por lo tanto en la velocidad de
ejecución. Microchip ha dividido sus microcontroladores en tres grandes
subfamilias de acuerdo al número de bits de su bus de instrucciones:
La siguiente es una lista de las características que comparte el
PIC16F877 con los dispositivos más cercanos de su familia:

- CPU RISC
- Sólo 35 instrucciones que aprender
- Todas las instrucciones se ejecutan en un ciclo de reloj, excepto los
saltos que requieren dos
- Frecuencia de operación de 0 a 20 MHz (DC a 200 nseg de ciclo de
instrucción)
- Hasta 8k x 14 bits de memoria Flash de programa
- Hasta 368 bytes de memoria de datos (RAM)
- Hasta 256 bytes de memoria de datos EEPROM
- Hasta 4 fuentes de interrupción
- Stack de hardware de 8 niveles
- Reset de encendido (POR)
- Timer de encendido (PWRT)
- Timer de arranque del oscilador (OST)
- Sistema de vigilancia Watchdog timer.
- Protección programable de código
- Modo SEP de bajo consumo de energía
- Opciones de selección del oscilador
- Programación y depuración serie “In-Circuit” (ICSP) a través de dos
patitas
- Lectura/escritura de la CPU a la memoria flash de programa
- Rango de voltaje de operación de 2.0 a 5.5 volts
- Alta disipación de corriente de la fuente: 25mA
Rangos de temperatura: Comercial, Industrial y Extendido
- Bajo consumo de potencia:
Menos de 0.6mA a 3V, 4 Mhz
20 µA a 3V, 32 Khz
Menos de 1µA corriente de standby.

Periféricos

- Timer0: Contador/Temporizador de 8 bits con pre-escalador de 8bits


- Timer1: Contador/Temporizador de 16 bits con pre-escalador
- Timer0: Contador/Temporizador de 8 bits con pre-escalador y post-
escalador de 8 bits y registro de periodo.
- Dos módulos de Captura, Comparación y PWM
- Convertidor Analógico/Digita l: de 10 bits, hasta 8 canales
- Puerto Serie Síncrono (SSP)
- Puerto Serie Universal (USART/SCI).
- Puerto Paralelo Esclavo (PSP): de 8 bits con líneas de protocolo

Diagrama de Bloques del PIC16F877

En la siguiente figura se muestra a manera de bloques la organización


interna del PIC16F877, Se muestra también junto a este diagrama su
diagrama de patitas, para tener una visión conjunta del interior y exterior
del Chip.
Teclado Matricial

¿Cómo funciona un teclado matricial?

El principio de funcionamiento es sencillo y es similar a lo que haríamos para


multiplexar leds o displays de 7 segmentos. El programa configura el puerto B
del PIC de la siguiente forma:  RB4 a RB7 funcionan como salidas y la otra
mitad (RB0-RB3) como entradas. Las filas (horizontal) del teclado matricial se
conectan a los bits más significativos que funcionan como salidas, mientras que
las columnas (vertical) se conectan a los bits menos significativos del puerto
que funcionan como entradas con resistencias pull-down. Cualquier tecla que
se oprima en una columna causará que uno de los bits menos
significativos del puerto (RB0 – RB3) cambie de un estado lógico bajo a
un estado alto.
La siguiente imagen muestra las conexiones del teclado al puerto B del
microcontrolador. La imagen muestra el teclado en reposo (sin teclas
oprimidas).

¿Que pasa cuando se oprime una tecla en un teclado matricial?… la


corriente puede fluir a través del switch y el voltaje de los pines conectados a
las filas del teclado (5 V o nivel alto) aparece ahora también en alguno de los
pines RB0 a RB3 según la columna en la que se encuentra la tecla oprimida.
La siguiente imagen ilustra lo que sucede al oprimir una tecla: al oprimir el
botón 6 provocamos un cambio en el PIN RB2 que ahora recibe un 1 o estado
alto. Sabemos entonces que se ha pulsado un botón en la segunda columna y
se muestra como un nivel lógico alto aparece en los bits menos significativos
del puerto B, específicamente en RB2.

Pic C

¿QUE ES PIC C COMPILER?


PIC C Compiler es un inteligente y muy optimizado compilador C que
contienen operadores estándar del lenguaje C y funciones incorporados
en bibliotecas que son específicas a los registros de PIC,
proporcionando a los desarrolladores una herramienta poderosa para el
acceso al hardware las funciones del dispositivo desde el nivel de
lenguaje C.
El compilador CCS contiene más de 307 funciones integradas que
simplifiquen el acceso al hardware, mientras que la producción eficiente
y altamente optimizado código. Se incluyen funciones de hardware del
dispositivo de características tales como:

* Temporizadores y módulos PWM


* Convertidores A / D
* de datos on-chip EEPROM
* LCD controladores
* Memoria externa buses
* Entre otras...
4. INSTRUMENTOS Y DISPOSITIVOS UTILIZADOS

 Protoboard
 Computadora con software PIC C
 PIC 16F877A
 Resistencias de 220Ω
 LCD
 Fuente de poder de 5V
 Teclado Matricial
 Leds
 Cristal de 4Mhz
 Condensadores de 22uF

5. DESARROLLO DE LA PRÁCTICA

Según nuestras necesidades se ha generado el siguiente código, el cual


permite realizar la identificación de cada tecla del teclado matricial y de la
selección de 4 secuencias.

1) Identificación de la tecla
2) Selección de 4 secuencias
Simulaciones

1) Identificación de la tecla
2) Selección de 4 secuencias
- ANÁLISIS DE LOS RESULTADOS OBTENIDOS
Con los transistores podemos controlar el prendido de los displays para que parezca
que se visualize una palabra completa, en esta caso la palabra ‘’hola’’, con un
intervalo de tiempo de 8 ms prendemos los displays de izquierda a derecha,
utilizando el método burbuja podemos mover cada letra de la palabra y hacer que se
desplace la palabra.

6. CONCLUSIONES Y RECOMENDACIONES

Conclusiones

 Se logró realizar la implementación de la multiplexación de los displays


mediante el PIC 16F877A
 Toca realizar una tabla para la palabra ‘‘HOLA’’ en un display de ánodo
común
 Mediante el tiempo de espera correcto se puede visualizar la palabra
completa en los displays

Recomendaciones

 Buscar la manera más eficiente para la realización de nuestros


programas con el fin de evitar el uso de memoria extendido
 No olvidar siempre de asignar los pines de entrada y salida que
queremos utilizar
 Tener cuidado con la polarización del pic para no dañarlo

7. BIBLIOGRAFÍA

 REYES Carlos, Microcontroladores PIC, Tercera Edición 2008 [web].


Disponible en: http://www.buenastareas.com/ensayos/Secuenciador-De-
Luces/2885260.html
 Teclado Matricial. (s.f.). Obtenido de geekfactory:
http://www.geekfactory.mx/tutoriales/tutoriales-pic/teclado-matricial-con-
pic/
 Pic C. (s.f.). Obtenido de Electrónica Fácil:
http://aprendiendoelectronicafacil.blogspot.com/p/ccs-compiler-v.html

8. ANEXOS

También podría gustarte