Este documento presenta los detalles de un laboratorio sobre la programación básica del microcontrolador PIC16F877A. Incluye la configuración de puertos de entrada y salida, y tareas como hacer parpadear un LED a diferentes velocidades usando retardos de tiempo. También cubre el uso de dos pulsadores para encender y apagar un LED con tiempos de retardo distintos.
1. UNIVERSIDAD NACIONAL TECNOLÓGICA DE
LIMA SUR
INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES
Microprocesadores y Microcontroladores
Laboratorio 04:
Integrantes:
-Inca Vega Flaviano
-Hernandez Baustista Luis Alberto
-Montalvo Condori Vladimir
-Castañeda Zabala Jesus Gonzalo
Docente:
Lezama Calvo Jinmi Gregory
2. 1. Objetivo:
• Aprendizaje y acercamiento del alumno a la programación básica del
PIC16F877A.
• Manejo de puertos de entrada y salida del microcontrolador.
2. Marco Teórico:
El PIC16F877 es un microcontrolador con memoria de programa tipo FLASH,
lo que representa gran facilidad en el desarrollo de prototipos y en su
aprendizaje ya que no se requiere borrarlo con luz ultravioleta como las
versiones EPROM, sino que permite programarlo nuevamente sin ser borrado
con anterioridad. El PIC16F877 es un microcontrolador de Microchip
Technology fabricado en tecnología CMOS, su consumo de potencia es muy
bajo y además es completamente estático, esto quiere decir que el reloj puede
detenerse y los datos de la memoria no se pierden.
- Configuración de pines
Los pines de entrada/salida de este microcontrolador están organizados en cinco
puertos, el puerto A con 6 líneas, el puerto B con 8 líneas, el puerto C con 8
líneas, el puerto D con 8 líneas y el puerto E con 3 líneas. Cada pin de esos
puertos se puede configurar como entrada o como salida independiente
programando un par de registros diseñados para tal fin. En ese registro un bit en
"0" configura el pin del puerto correspondiente como salida y un bit en "1" lo
configura como entrada. Dichos pines del microcontrolador también pueden
cumplir otras funciones especiales, siempre y cuando se configuren para ello,
según se verá más adelante.
3. - Características del PIC16F877A
1. 100.000 ciclos de borrado/escritura Enhanced Flash memoria del programa
típica
2. 1.000.000 de borrado/ciclo de escritura Datos EEPROM memoria típica
3. Retención EEPROM de datos > 40 años
4. Auto-reprogramable bajo control de software
5. Programación serie en circuito(ICSP) a través de dos pines
6. Programación serie de 5V in-circuit de un solo suministro
7. Temporizador watchdog (WDT) con su propio RC en chip oscilador para un
funcionamiento fiable
8. Protección programable del código
9. Ahorro de energía Modo de suspensión
10. Opciones de oscilador seleccionables
11. Depuración en circuito (ICD) a través de dos pines
Otra característica de los PICs es el manejo de los bancos de registros. En línea
general, los registros se clasifican como de uso general (GPR) y de uso
específico o de funciones especiales (SFR).
● Los registros de uso general pueden ser usados directamente por el usuario,
sin existir restricciones. Pueden servir para almacenar resultados que se
reciben desde el registro W (acumulador), datos que provienen de las puertas
de entradas, etc.
● Los registros de uso específicos no pueden ser usados directamente por el
usuario. Estos registros controlan prácticamente todo el funcionamiento del
microcontrolador, pues toda la configuración necesaria para funcionamiento
del microcontrolador es hecho a través de algún tipo de SFR.
4. 3. Procedimiento:
En base al desarrollo del laboratorio N 3, realizar la configuración de retardos:
Actividades a realizar por el alumno:
Las actividades del laboratorio son:
1. Parpadeo de un led a diferentes tiempos de retardo.
● Código:
5. ● Simulacion (en Proteus) :
Para el correcto funcionamiento del circuito desarrollado , es imprescindible realizar
las correctas conexiones hacia cada componente, es decir aquellos componentes
electrónicos como las Resistencias, diodos Led, switch pulsador, pero sobre todo las
ubicaciones hacia los pines del microcontrolador, que en este caso es el PIC18F4550.
De esta forma se puede dar como confirmado y concluido que dicha programación
sobre la simulación fue correctamente desarrollada y de esa manera muestra la
efectividad del circuito.
6. 2. Mediante 2 pulsadores o switch determina 2 tiempos de retardo distintos
que controlan el encendido y apagado de un led.
● Código: