Documente Academic
Documente Profesional
Documente Cultură
I. INTRODUCCIN
[1] Un micro controlador (abreviado C, UC o
MCU) es un circuito integrado programable, capaz
de ejecutar las rdenes grabadas en su memoria.
Est compuesto de varios bloques funcionales, los
cuales cumplen una tarea especfica. Un micro
controlador incluye en su interior las tres
principales
unidades
funcionales
de
una
computadora: unidad central de procesamiento,
memoria y perifricos de entrada/salida.
En este caso utilizaremos el micro controlador o
PIC16F877 el cual es fabricado por Microchip
pertenece a una gran familia de micro controladores
de 8 bits (bus de datos) que tienen las siguientes
caractersticas generales que los distinguen de otras
familias.
Tecnologa RISC
Tecnologa CMOS Estas caractersticas se
conjugan para lograr un dispositivo altamente
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
Arquitectura interna:
El oscilador externo
Todo micro controlador requiere un circuito externo
que le indique la velocidad a
La que debe trabajar. Este circuito, que se conoce
como oscilador o reloj, es muy
Simple pero de vital importancia para el buen
funcionamiento del sistema. El
PIC16F877 puede utilizar cuatro tipos de oscilador
diferentes. Estos tipos son:
RC. Oscilador con resistencia y condensador.
XT. Cristal (por ejemplo de 1 a 4 MHz).
HS. Cristal de alta frecuencia (por ejemplo 10 a
20 MHz).
LP. Cristal para baja frecuencia y bajo consumo
de potencia.
BANCO 0:
- TMR0: Registro del temporizador/contador de 8
bits.
- PCL: Byte menos significativo del contador de
programa (PC).
- STATUS: Contiene banderas (bits) que indican
el estado del procesador
Despus de una operacin aritmtica/lgica.
- FSR: Registro de direccionamiento indirecto.
- PORTA, PORTB, PORTC, PORTD, PORTE:
Registro de puertos de E/S de
Datos. Conectan con los pines fsicos del micro.
- PCLATH: Byte alto (ms significativo) del
contador de programa (PC).
- INTCON: Registro de control de las
interrupciones.
- ADRESH: Parte alta del resultado de la
conversin A/D.
- ADCON0: Controla la operacin del mdulo de
conversin A/D
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
BANCO 1:
- OPTION: Registro de control de frecuencia del
TMR0.
- TRISA, TRISB, TRISC, TRISD. TRISE:
Registros de configuracin de la
Operacin de los pines de los puertos.
- ADRESL: Parte baja del resultado de la
conversin A/D.
- ADCON1: Controla la configuracin de los
pines de entrada anloga.
BANCO 2:
- TMR0: Registro del temporizador/contador de 8
bits.
- PCL: Byte menos significativo del contador de
programa (PC).
- FSR: Registro de direccionamiento indirecto.
- EEDATA: Registro de datos de la memoria
EEPROM.
- EEADR: Registro de direccin de la memoria
EEPROM.
- PCLATH: Byte alto (ms significativo) del
contador de programa (PC).
- INTCON: Registro de control de las
interrupciones.
BANCO 3:
- OPTION: Registro de control de frecuencia del
TMR0.
- EECON1: Control de lectura/escritura de la
memoria EEPROM de datos.
- EECON2: No es un registro fsico.
II. PROCEDIMIENTO
A. Construccin del proyecto
Al realizar el posible esquema de desarrollo del
proyecto encontramos que existen diversas formas
de desarrollar el producto propuesto, para este caso
decidimos usar el lenguaje C para programar el
PIC16F877 ya que las funciones que necesitamos
usar se pueden implementar de una manera ms
resumida en el lenguaje C orientado a micro
controladores.
El Lenguaje C orientado a Microcontroladores es un
programa codificado en lenguaje C resulta muy til
en la aplicacin de micro Controladores, dado que
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
Ventajas
Un ncleo del lenguaje simple, con
funcionalidades aadidas importantes,
como funciones matemticas y de manejo
de archivos, proporcionadas por bibliotecas.
Es un lenguaje muy flexible que permite
programar con mltiples estilos. Uno de los
ms empleados es el estructurado "no
llevado al extremo" (permitiendo ciertas
licencias de ruptura).
Un sistema de tipos que impide operaciones
sin sentido.
Usa un lenguaje de preprocesado, el
preprocesador de C, para tareas como
definir macros e incluir mltiples archivos
de cdigo fuente.
Desventajas
Recoleccin de basura nativa, sin embargo
se encuentran a tal efecto bibliotecas como
la
"libgc"
desarrollada
por
Sun
Microsystems, o el Recolector de basura de
Boehm.
Encapsulacin.
Funciones anidadas, aunque GCC tiene esta
caracterstica como extensin.
Polimorfismo en tiempo de cdigo en forma
de sobrecarga, sobrecarga de operadores y
slo dispone de un soporte rudimentario
para la programacin genrica.
B. Levantamiento de Requerimientos
El proyecto debe contener 20 LED (8 Blancos, 4
Rojos, 4 Verdes y 4 Amarillos), 1 PIC16F877 y
resistencias de 300 Ohmios.
El funcionamiento del proyecto debe ser el
siguiente:
1. Encienden los LED Blancos.
2. Encienden los LED Rojos.
3. Encienden los LED Verdes.
4. Encienden los LED Amarillos
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
III. FUNCIONAMIENTO
En el proyecto no usamos matemtica ya que el
lenguaje nos permite configurar los retardos por
medio de parmetros ingresados en el cdigo.
Al simular el proyecto en PROTEUS inicialmente
se cuenta con un pulsador que permite reiniciar el
micro controlador, las resistencias van conectadas a
los LED, y se utilizan con el fin de limitar la
corriente que pasa a travs de los LED y de los
pines del micro controlador, con esto se protegen
los dispositivos, se utilizan los puertos B, C y D del
PIC por facilidad en la simulacin, aclaramos que
los dos ltimos pines del puerto C no se utilizan ya
que estos estn reservados para la comunicacin
serial.
Fundacin Universitaria Catlica Lumen Gentium. Cardona, Casas, Perea. Programacin PIC16F877.
V. CONCLUSIONES
El programar en el lenguaje C orientado a micro
controladores, logro que ampliramos nuestros
conocimientos para poder aplicarnos en un futuro
cercano, es un tipo de programacin al cual no
estamos acostumbrados pero si se tienen buenas
bases de lgica, abstraccin y diseo de algoritmos
se puede construir cualquier tipo de ensamble con
micro controladores.
VI. AUTORES
Alvaro Jose Cardona Hurtado: Estudiante de
Ingenieria en Sistemas 8 Semestres de la
Universidad Catolica Lumen Gentium, actualmente
se encuentra en el cargo laboral de Analista de
Sistemas en el Proyecto Mujeres Ahorradoras en
Accion operado por la caja de compensacin
Comfandi.
Alvaro Enrique Perea Giraldo: Estudiante de
Ingenieria en Sistemas 8 Semestres de la
Universidad Catolica Lumen Gentium, actualmente
se encuentra en el cargo laboral de soporte tcnico
IT en la empresa GAMMA INGENIEROS.
Jorge Enrique Casas Bastidas: Estudiante de
Ingenieria en Sistemas 8 Semestres de la
Universidad Catolica Lumen Gentium, actualmente
se encuentra en el cargo laboral Analista de DSS en
la empresa NIELSEN.
REFERENCIAS