Curso de MPLABX y XC8 #6: Modulo PWM CCP2 Pic18f2550.
Ya vistos los anteriores capítulos y una vez teniendo todos los software
necesarios procederemos a explicar de que tratar esta clase.
Modulación de ancho de pulso (PWM).
La modulación de ancho de pulso ó PWM es una técnica que consiste en transferir una carga a un dispositivo con una señal cuadrada; esta señal se componen por dos estados, uno alto y uno bajo, para un microcontrolador estos estados se representarían como 5v voltios en estado alto y 0 voltios en estado bajo; esta señal puede variar dependiendo de la frecuencia a la que es enviada y la amplitud de la tensión a la que es enviada; para entender mejor este concepto veremos la siguiente imagen:
La anterior imagen corresponde a un pwm el cual se le asigna diferentes frecuencias para variar la velocidad de salida de la carga; esto se puede utilizar para el control de velocidad de motores y otro tipos de elementos.
Configuración PWM Pic18f2550:
Para configurar los pines CCP en modo PWM debemos tener clara las características de los módulos CCP en el microcontrolador a utilizar; en este caso es el pic18f2550.
Modulo CCPx Pic18f2550:
Sacado de: PIC18F2455/2550/4455/4550-Data Sheet, 15.0 CAPTURE/COMPARE/PWM
(CCP) MODULES. Página; 143.
PIC18F2455/2550/4455/4550 todos los dispositivos tienen dos Módulos CCP (Captura/Comparación/ PWM ) .
Cada módulo contiene un registro de 16 bits , que puede funcionar como un registro de 16 bits de captura , de comparación o de PWM.
Estas son las características básicas del modulo CCPx en los microcontroladores de la familia PIC18F.
Ya que el módulo CCP posee tres funciones básicas debemos configurarlas, ya que no se pueden utilizar al mismo tiempo, por eso hay un registro que posee 8 bit para configurar los diferentes modos que soporta el modulo CCPx; este registro es CCPxCON. Ahora veremos sus diferentes configuraciones:
bit 06 al 07 --------------NO SE IMPLEMENTA: Se lee como '0'
bit 04 al 05 ------------- DCxB1:DCxB0: PWM Ciclo de trabajo. El bit 1 y el bit 0 para el Módulo CCPx.
Modo de captura:-----------------No usado.
Modo de comparación:-----------No usado.
El modo PWM: -------------------Estos bits son los dos bits menos significativos (bit 1 y bit 0) del ciclo de trabajo PWM 10-bit. Los ocho MSB de la obligación ciclo se encuentran en CCPR1L.
bits 03 al 0 -------------- CCPxM3: CCPxM0: Modo Módulo CCPx bits de selección
0000 = Captura / Comparación / PWM desactivado/a (restablece módulo CCPx)
0001 = Reservado
0010 = modo Comparación: palanca de salida en partido (bit CCPxIF está establecido)
0011 = Reservado
0100 = Modo de captura: cada flanco de bajada
0101 = Modo de captura: cada flanco ascendente
0110 = Modo de captura: cada flanco ascendente cuarto
0111 = Modo de captura: cada flanco ascendente 16a
1000 = modo de comparación: inicializa pin CCPx baja;comparar, pin vigor CCPx alta (CCPxIF bit se pone)
1001 = modo de comparación: inicializa pin CCPx alta; comparar, pin vigor CCPx baja (CCPxIF bit se pone)
1010 = modo Compare: genera interrupción por software en comparación (bit CCPxIF se establece,
Pin CCPx refleja I / O Estado)
1011 = modo de comparación: desencadenar eventos especiales, restablecer temporizador, iniciar la conversión A / D en el partido CCP2
(CCPxIF bit se pone)
11xx = modo PWM
Nota 1: Estos bits no se aplican en los dispositivos 28 patillas y se leen como '0'.
Bien, estos son los bits de configuración con sus respectivas configuraciones del registro CPPxCON;
recordemos que a la hora de programar este registro se tiene que agregar el número del modulo a utilizar; como vamos a utilizar CCP2 en este caso el registro quedaría CCP2CON.
Ya que tenemos claro este registro vamos a ver el siguiente vídeo para ver en forma practica la configuración e implementación de este modulo:
Recuerden que el CCP2 en los microcontroladores de la familia pic18f, es multiplexada, así que se encuentra en dos puertos, esto se configura a través de los bits de configuración del micro, en el vídeo se explica como hacerlo.
Eso es todo; espero que les halla gustado este capitulo del curso de programación en C para microcontroladores PIC con MPLABX y XC8 Compiler.
Si encuentran algún error por favor dejar un comentario en el blog, así podré solucionarlo e informar correctamente a todos; también si tienen algo que aportar con gusto será bienvenido; y por otro lado la traducción no es muy exacta, pero en el vídeo trato de explicar sin necesidad de ella; aún así también son bienvenidas las traducciones corregidas.
Esto es todo por hoy, Sigue mi blog y visita mi próxima entrada!
NOTA: se les recuerda a los lectores que se utilizo la versión del compilador XC8 Versión 1.34 la cual trae las peripheral libraries incluidas en él; el pdf de estas lo pueden encontrar en la parte de etiquetas del blog en la etiqueta llamada Documentación.
Instalación de MPLABX y XC8 Compiler:
http://electronicalibrexc.blogspot.com.co/2015/10/electronica-libre-curso-de-xc8-y-mplabx.html
Bien muchachos, esto es todo por hoy; esten pendiente en mi canal, o de mi blog o de mi pagina de facebook.
Facebook: https://www.facebook.com/electronicalibrexc/
Youtube: http://www.youtube.com/c/breismanrueda
Google +: https://plus.google.com/u/0/+breismanrueda
Twitter: https://twitter.com/BreismamR
Esto es todo por hoy, Sigue mi blog y visita mi próxima entrada!
Cualquier duda, trabajo, tutoria personalizada por correo electronico o pagina en facebook:
Correo: ElectronicaLibreXC@outlook.com
Facebook: https://www.facebook.com/electronicalibrexc/
Buenas compañeros.
Antes
de iniciar el sexto capitulo del curso de programación en C para pic's
con MPLABX y XC8, les recomiendo ver los capítulos anteriores siguiendo
el siguiente LINK.
Modulación de ancho de pulso (PWM).
La modulación de ancho de pulso ó PWM es una técnica que consiste en transferir una carga a un dispositivo con una señal cuadrada; esta señal se componen por dos estados, uno alto y uno bajo, para un microcontrolador estos estados se representarían como 5v voltios en estado alto y 0 voltios en estado bajo; esta señal puede variar dependiendo de la frecuencia a la que es enviada y la amplitud de la tensión a la que es enviada; para entender mejor este concepto veremos la siguiente imagen:
La anterior imagen corresponde a un pwm el cual se le asigna diferentes frecuencias para variar la velocidad de salida de la carga; esto se puede utilizar para el control de velocidad de motores y otro tipos de elementos.
Configuración PWM Pic18f2550:
Para configurar los pines CCP en modo PWM debemos tener clara las características de los módulos CCP en el microcontrolador a utilizar; en este caso es el pic18f2550.
Modulo CCPx Pic18f2550:
Sacado de: PIC18F2455/2550/4455/4550-Data Sheet, 15.0 CAPTURE/COMPARE/PWM
(CCP) MODULES. Página; 143.
PIC18F2455/2550/4455/4550 todos los dispositivos tienen dos Módulos CCP (Captura/Comparación/ PWM ) .
Cada módulo contiene un registro de 16 bits , que puede funcionar como un registro de 16 bits de captura , de comparación o de PWM.
Estas son las características básicas del modulo CCPx en los microcontroladores de la familia PIC18F.
Ya que el módulo CCP posee tres funciones básicas debemos configurarlas, ya que no se pueden utilizar al mismo tiempo, por eso hay un registro que posee 8 bit para configurar los diferentes modos que soporta el modulo CCPx; este registro es CCPxCON. Ahora veremos sus diferentes configuraciones:
bit 06 al 07 --------------NO SE IMPLEMENTA: Se lee como '0'
bit 04 al 05 ------------- DCxB1:DCxB0: PWM Ciclo de trabajo. El bit 1 y el bit 0 para el Módulo CCPx.
Modo de captura:-----------------No usado.
Modo de comparación:-----------No usado.
El modo PWM: -------------------Estos bits son los dos bits menos significativos (bit 1 y bit 0) del ciclo de trabajo PWM 10-bit. Los ocho MSB de la obligación ciclo se encuentran en CCPR1L.
bits 03 al 0 -------------- CCPxM3: CCPxM0: Modo Módulo CCPx bits de selección
0000 = Captura / Comparación / PWM desactivado/a (restablece módulo CCPx)
0001 = Reservado
0010 = modo Comparación: palanca de salida en partido (bit CCPxIF está establecido)
0011 = Reservado
0100 = Modo de captura: cada flanco de bajada
0101 = Modo de captura: cada flanco ascendente
0110 = Modo de captura: cada flanco ascendente cuarto
0111 = Modo de captura: cada flanco ascendente 16a
1000 = modo de comparación: inicializa pin CCPx baja;comparar, pin vigor CCPx alta (CCPxIF bit se pone)
1001 = modo de comparación: inicializa pin CCPx alta; comparar, pin vigor CCPx baja (CCPxIF bit se pone)
1010 = modo Compare: genera interrupción por software en comparación (bit CCPxIF se establece,
Pin CCPx refleja I / O Estado)
1011 = modo de comparación: desencadenar eventos especiales, restablecer temporizador, iniciar la conversión A / D en el partido CCP2
(CCPxIF bit se pone)
11xx = modo PWM
Nota 1: Estos bits no se aplican en los dispositivos 28 patillas y se leen como '0'.
Bien, estos son los bits de configuración con sus respectivas configuraciones del registro CPPxCON;
recordemos que a la hora de programar este registro se tiene que agregar el número del modulo a utilizar; como vamos a utilizar CCP2 en este caso el registro quedaría CCP2CON.
Ya que tenemos claro este registro vamos a ver el siguiente vídeo para ver en forma practica la configuración e implementación de este modulo:
Recuerden que el CCP2 en los microcontroladores de la familia pic18f, es multiplexada, así que se encuentra en dos puertos, esto se configura a través de los bits de configuración del micro, en el vídeo se explica como hacerlo.
Eso es todo; espero que les halla gustado este capitulo del curso de programación en C para microcontroladores PIC con MPLABX y XC8 Compiler.
Si encuentran algún error por favor dejar un comentario en el blog, así podré solucionarlo e informar correctamente a todos; también si tienen algo que aportar con gusto será bienvenido; y por otro lado la traducción no es muy exacta, pero en el vídeo trato de explicar sin necesidad de ella; aún así también son bienvenidas las traducciones corregidas.
Esto es todo por hoy, Sigue mi blog y visita mi próxima entrada!
NOTA: se les recuerda a los lectores que se utilizo la versión del compilador XC8 Versión 1.34 la cual trae las peripheral libraries incluidas en él; el pdf de estas lo pueden encontrar en la parte de etiquetas del blog en la etiqueta llamada Documentación.
Instalación de MPLABX y XC8 Compiler:
http://electronicalibrexc.blogspot.com.co/2015/10/electronica-libre-curso-de-xc8-y-mplabx.html
Facebook: https://www.facebook.com/electronicalibrexc/
Youtube: http://www.youtube.com/c/breismanrueda
Google +: https://plus.google.com/u/0/+breismanrueda
Twitter: https://twitter.com/BreismamR
Esto es todo por hoy, Sigue mi blog y visita mi próxima entrada!
Cualquier duda, trabajo, tutoria personalizada por correo electronico o pagina en facebook:
Correo: ElectronicaLibreXC@outlook.com
Facebook: https://www.facebook.com/electronicalibrexc/
Salu2...