Lab.
N° 11 PWM
PROGRAMACIÓN DE MICROCONTROLADORES
IV Ciclo
Laboratorio N° 11
PWM
Apellido y nombre Sección Grupo
Verano Roman , Onil 4B C5
Cruz Castro, Alexandra 4B C5
Profesor: Izquierdo León, Dennis Eduardo
Fecha de realización: 07-12-20
Fecha de entrega: 04-01-21
Lima – 2020
TECSUP
pág. 1
Lab. N° 11 PWM
PWM
Objetivos
1. Utilizar las instrucciones para programar al microcontroladorPIC16F877
2. Utilizar software de desarrollo proporcionada por el fabricante
3. Implementación hardware
Introducción
Los PICs constituyen en la actualidad una forma de proveer inteligencia a equipos o sistemas para
un mejor desempeño de los mismos. Para que realicen los eventos que queramos es necesario
utilizar los puertos como entrada para que la data ingrese y se procese en el PIC y puertos de
salida para comunicarlos con otros dispositivos y en conjunto logren un objetivo.
Preparación
Para la realización de este laboratorio se requiere la lectura previa de la información proporcionada
para el curso, como el texto y el manual del fabricante.
Equipos y Materiales
● Computadora
● Software de desarrollo
● Proyector multimedia
● Texto del curso
● Manual del fabricante
● Tarjeta de desarrollo
pág. 2
Lab. N° 11 PWM
Seguridad
Trabajar con Seguridad evita que las personas sufran daños, y provee un ambiente satisfactorio de
trabajo.
Al trabajar en este laboratorio o taller y cualquiera de los subsiguientes, realice el siguiente
procedimiento:
1. Al ingresar, inspeccione:
Las vías de acceso.
Orden y limpieza.
2. En su estación de trabajo evalúe las condiciones de:
Orden y Limpieza.
Herramientas y equipos.
3. Realice su trabajo teniendo en cuenta:
Orden y limpieza.
Seguridad.
Proceda a realizar las conexiones de los equipos o implementación de los circuitos
comprobando que la línea eléctrica se encuentre desconectada.
Solicite visto bueno al profesor antes de aplicar energía eléctrica.
4. Realice el análisis de riesgo personal:
¿Qué es lo que voy a hacer?
¿Qué es lo que puede salir mal?
¿Qué debo hacer para que no salga mal?
5. Al terminar sus labores, deje su estación de trabajo en buenas condiciones:
Ordenado y limpio.
Seguro.
Desconecte el suministro de energía eléctrica.
pág. 3
Lab. N° 11 PWM
Lectura
Modo PWM (Modulación de Ancho de Pulso)
pág. 4
Lab. N° 11 PWM
Control del Periodo del PWM
Control del Ciclo de Trabajo del PWM
pág. 5
Lab. N° 11 PWM
Secuencia de configuración del PWM
pág. 6
Lab. N° 11 PWM
Procedimiento
Los módulos CCPx - Modo PWM (Modulación de anchura de pulsos), consiste en generar
una señal de onda cuadrada por la línea RC2/CCP1 cuyo periodo puede ser modificado así
como la anchura del pulso (Duty Cycle).
El periodo se determina según la fórmula T = (PR2+1)*4*Tosc*TMR2 preescaler.
La duración del pulso o "Duty Cycle" (d) se determina según
d=(CCPR1L:CCPCON1<5:4>)*Tosc*TMR2 preescaler.
El ejemplo emplea al módulo CCP1 con salida de señal por la línea RC2/CCP1. La señal de
salida tiene un periodo determinado para la constante "Periodo" y una anchura "Duty"
determinada por la constante "Duty". Un osciloscopio conectado en RC2/CCP1 puede ayudar
a realiza las oportunas medidas.
1. Copiar el siguiente programa, analizar, comentar, simular e implementar:
List p=16F877A ;Tipo de procesador
include<P16F877A.INC> ;Definiciones de registros internos
;protección de código y datos=OFF, LVP=OFF, WDT=OFF y OSC=XT
__config _CP_OFF&_CPD_OFF&_LVP_OFF&_WDT_OFF&_XT_OSC
Periodo equ .40 ;comentar:
Duty equ .10 ;comentar:
org 0x00
bsf STATUS,RP0 ; comentar:
movlw b'11111011' ; comentar:
movwf TRISC ; comentar:
movlw Periodo-1 ; comentar:
movwf PR2 ; comentar:
bcf STATUS,RP0 ; comentar:
movlw Duty ; comentar:
movwf CCPR1L ; comentar:
;El módulo CCP1 actúa en el modo PWM con salida de señal
;por RC2/CCP1
movlw b'00001100' ; comentar:
movwf CCP1CON ; comentar:
;El TMR2 trabaja con un preescaler 1:1 por lo que con una
;frecuencia de 4MHz incrementa 1uS (4*Tosc)
movlw b'00000100' ; comentar:
movwf T2CON ; comentar:
nop ; comentar:
goto $-1 ; comentar:
end ;Fin del programa fuente
pág. 7
Lab. N° 11 PWM
2. Mostrar evidencia de ejecución de los programas
● Capturar ventanas que muestran el resultado de la creación del proyecto.
pág. 8
Lab. N° 11 PWM
● Capturar ventanas que muestran el resultado del ensamble del proyecto.
● Capturar ventanas que muestren la simulación paso a paso en el MPLAB.
● Comentar la función de las instrucciones
pág. 9
Lab. N° 11 PWM
● Tomar fotos a los módulos de trabajo.
Simulación en Proteus
Aplicación de lo aprendido
Diseñar un programa que cuando se presiona la tecla ‘1’ aumente el duty cycle y si se presiona la tecla
‘0’ disminuye el DC., en la pantalla LCD 16x2 se debe mostrar el porcentaje del duty cycle. Hacer una
estrategia para que no llegue a sus límites superiores e inferiores.
pág. 10
Lab. N° 11 PWM
CODIGO EN MPLAX-IDE
pág. 11
Lab. N° 11 PWM
pág. 12
Lab. N° 11 PWM
SIMULACION EN PROTHEUS
CONCLUSION
• Se concluyo realizando los cálculos para poder hallar el valor de Duty Cycle y viendo
los resultados en el osciloscopio de la simulación.
• Se logró obtener la frecuencia de 3.2 KHz para nuestra aplicación con los cálculos que
se muestras arriba y poder visualizar el ciclo de trabajo en nuestro LCD.
• El PWM es muy útil en motores para regular la velocidad de giro y también se usa
como parte de un conversor ADC en fuentes conmutadas.
pág. 13
Lab. N° 11 PWM
pág. 14
Lab. N° 11 PWM
Observaciones Generales
1. La presentación del informe se realiza al ingresar al Laboratorio. En la clase siguiente a su
realización.
2. Se tomará en cuenta las reglas de ortografía en la redacción del informe.
3. La evaluación se realizará del siguiente modo
Realización Puntos
Informe desarrollado correctamente 5
Formato de evaluación de laboratorio 10
Implementación 5
Total 20
Curso: Programación de Microcontroladores Sección
Lab. No: 11 Mesa No:
Tema: PWM Fecha:
Comentario:
Participantes:
1
2
3
4
pág. 15
Lab. N° 11 PWM
pág. 16