SlideShare una empresa de Scribd logo
1 de 2
Descargar para leer sin conexión
Cibernética y Mecatrónica                                     Microcontroladores
Escuela de Ingeniería                                Ing. Rafael Durán Campoamor



Uso de timer como generador de base de tiempos

Se desea realizar una temporización de 0.5 s utilizando el TMR0 del
PIC16F84A.

La frecuencia de trabajo del PIC es de 4 MHz, por lo que el timer
incrementa su cuenta cada µs (Tosc=                                   ) dicho lo
anterior debemos contar 500,000µs.

500,000=(estados a contar)*(TMR0)*(Prescaler)*(contador)

Si el máximo es 256 selecciono un valor multiplo de 500,000, en este caso 250, este
valor se asigna al TMR0

256-250=6, entonces el prescaler seleccionado será el más cercano es 8

Prescaler=8*valor de contador
Prescaler=8*250µs=2,000µs cargando el TMR0 a 250
Si repito lo anterior cargando el timer 250 veces con ese valor obtenemos en un
ciclo 500,000µs (250*2,000 )

Otro ejemplo: se desea una temporización de 10ms utilizando el TMR0

10,000/250=40
256-40=216; cargamos el TMR0 con 216

Temp=10 ms; Prescaler=10000us/(216*1us)
Prescaler=256*40us=10240us ó 10.24ms (me paso por 240us)
Si selecciono 217 como valor de TMR0 entonces tendremos,

Prescaler=256*39us=9,984us (diferencia de 16us) el segundo caso es más
exacto.

                                                              27/10/2011    Página 1
Cibernética y Mecatrónica                                     Microcontroladores
     Escuela de Ingeniería                                Ing. Rafael Durán Campoamor


     Ejemplo de programacion del pic

     ;-------Configuración de puertos-------
                 ORG 0x00
                 GOTO inicio
                 ORG 0x04             ; Atiendo la interrupción

                 BTFSS PORTB,0 ; si el LED está apagado
                 GOTO LED                   ; voy a LED y lo enciendo
                 BCF PORTB,0          ; sino apago el LED
                 BCF INTCON,2         ; limpio la bandera T0IF
                 RETFIE               ; regreso habilitando la interrupción

     LED BSF PORTB,0       ; enciendo el LED
              BCF INTCON,2       ; borro la bandera T0IF
              RETFIE             ; regreso habilitando la interrupción

     inicio      BSF STATUS,5   ; configurando puertos
                 CLRF TRISB     ; puerto B es salida
                 MOVLW 0x07     ; cargo w con 00000111
                 MOVWF OPTION_REG ; el Divisor = 256
                 BCF STATUS,5
olvide
cambiar el
                 MOVLW 0xA0     ; cargo w con 10100000
dato dato        MOVWF INTCON   ; habilitamos GIE y T0IE
                 CLRF PORTB     ; limpiamos PORTB

     tiempo         MOVLW 0xD9                   ; cargo w con 217
                    MOVWF TMR0                   ; lo paso a TMR0
     NADA           BTFSS INTCON,2               ; me quedo haciendo nada
                    GOTO NADA                    ; hasta que TMR0 desborde, y entonces
                    GOTO tiempo                  ; volveré a cargar TMR0
     ;------------------------------------------
            END


                                                                   27/10/2011    Página 2

Más contenido relacionado

La actualidad más candente

Microprogramacion - Interrupciones y timers
Microprogramacion - Interrupciones y timersMicroprogramacion - Interrupciones y timers
Microprogramacion - Interrupciones y timersmarco calderon layme
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4Luis Zurita
 
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...SANTIAGO PABLO ALBERTO
 
Uso del timer0 para el pic 16 f877a con el compilador hi tech
Uso del timer0 para el pic 16 f877a con el compilador hi techUso del timer0 para el pic 16 f877a con el compilador hi tech
Uso del timer0 para el pic 16 f877a con el compilador hi techCarlos Buitron Quispe
 
Ejemplos 4to Examen Mci
Ejemplos 4to Examen MciEjemplos 4to Examen Mci
Ejemplos 4to Examen MciLuis Zurita
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosEduardo Henriquez
 
Curso Micro Tema 5
Curso Micro Tema 5Curso Micro Tema 5
Curso Micro Tema 5Luis Zurita
 
EJERCICIO ADICIONAL 1ER EXAMEN
EJERCICIO ADICIONAL 1ER EXAMENEJERCICIO ADICIONAL 1ER EXAMEN
EJERCICIO ADICIONAL 1ER EXAMENLuis Zurita
 
Examen 4 intensivo micro
Examen 4 intensivo microExamen 4 intensivo micro
Examen 4 intensivo microLuis Zurita
 
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorLab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorDaniel Pardo
 

La actualidad más candente (20)

Timer0
Timer0Timer0
Timer0
 
Microprogramacion - Interrupciones y timers
Microprogramacion - Interrupciones y timersMicroprogramacion - Interrupciones y timers
Microprogramacion - Interrupciones y timers
 
Ccp2009170309
Ccp2009170309Ccp2009170309
Ccp2009170309
 
Timer 0 - Pic16F877A
Timer 0 - Pic16F877ATimer 0 - Pic16F877A
Timer 0 - Pic16F877A
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
 
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...
Microcontroladores: Módulos del micro PIC16F877 con temporizadores e interrup...
 
Uso del timer0 para el pic 16 f877a con el compilador hi tech
Uso del timer0 para el pic 16 f877a con el compilador hi techUso del timer0 para el pic 16 f877a con el compilador hi tech
Uso del timer0 para el pic 16 f877a con el compilador hi tech
 
Clase Timer 1
Clase Timer 1Clase Timer 1
Clase Timer 1
 
Módulo Timer 1 del PIC16F887
Módulo Timer 1 del PIC16F887Módulo Timer 1 del PIC16F887
Módulo Timer 1 del PIC16F887
 
Micro2 tema 2
Micro2 tema 2Micro2 tema 2
Micro2 tema 2
 
Ejemplos 4to Examen Mci
Ejemplos 4to Examen MciEjemplos 4to Examen Mci
Ejemplos 4to Examen Mci
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros Involucrados
 
TMR0 Y RB0_INT
TMR0 Y RB0_INTTMR0 Y RB0_INT
TMR0 Y RB0_INT
 
Modulo Timer 0 del PIC16F887
Modulo Timer 0 del PIC16F887Modulo Timer 0 del PIC16F887
Modulo Timer 0 del PIC16F887
 
Curso Micro Tema 5
Curso Micro Tema 5Curso Micro Tema 5
Curso Micro Tema 5
 
Timers
TimersTimers
Timers
 
EJERCICIO ADICIONAL 1ER EXAMEN
EJERCICIO ADICIONAL 1ER EXAMENEJERCICIO ADICIONAL 1ER EXAMEN
EJERCICIO ADICIONAL 1ER EXAMEN
 
Examen 4 intensivo micro
Examen 4 intensivo microExamen 4 intensivo micro
Examen 4 intensivo micro
 
In terrupciones pic
In terrupciones picIn terrupciones pic
In terrupciones pic
 
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorLab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
 

Similar a Uso del tmr0

Guía de ejercicios resueltos y propuestos tema 4
Guía de ejercicios resueltos y propuestos tema 4Guía de ejercicios resueltos y propuestos tema 4
Guía de ejercicios resueltos y propuestos tema 4Luis Zurita
 
Examen micros t1_06_solucion
Examen micros t1_06_solucionExamen micros t1_06_solucion
Examen micros t1_06_solucionJair BG
 
Ejemplo varias interrupciones
Ejemplo varias interrupcionesEjemplo varias interrupciones
Ejemplo varias interrupcionesLuis Zurita
 
Curso de microcontroladores capitulo 06
Curso de microcontroladores capitulo 06Curso de microcontroladores capitulo 06
Curso de microcontroladores capitulo 06Hamiltonn Casallas
 
Interrupciones y Temporizadores pucesi
Interrupciones y Temporizadores   pucesiInterrupciones y Temporizadores   pucesi
Interrupciones y Temporizadores pucesiDavid Narváez
 
Manejo de Puertos PIC
Manejo de Puertos PICManejo de Puertos PIC
Manejo de Puertos PICSawy G
 
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricialGabriel Bravo Rojas
 
TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"Diego Rojas Ruiz
 
Curso de microcontroladores capitulo 05
Curso de microcontroladores capitulo 05Curso de microcontroladores capitulo 05
Curso de microcontroladores capitulo 05Hamiltonn Casallas
 
4. interrupciones y temporizadores
4. interrupciones y temporizadores4. interrupciones y temporizadores
4. interrupciones y temporizadoresDavid Narváez
 
Funcionamiento del Timer 0
Funcionamiento del Timer 0Funcionamiento del Timer 0
Funcionamiento del Timer 0Jaime E. Velarde
 
Descripcion detallada del pic 16 f877
Descripcion detallada del pic 16 f877Descripcion detallada del pic 16 f877
Descripcion detallada del pic 16 f877Raphael Raphael
 
Laboratorio de Microcomputadoras - Práctica 03
 Laboratorio de Microcomputadoras - Práctica 03 Laboratorio de Microcomputadoras - Práctica 03
Laboratorio de Microcomputadoras - Práctica 03Cristian Ortiz Gómez
 
MICROCONTROLADORES II EN C. TEMA 2
MICROCONTROLADORES II EN C. TEMA 2MICROCONTROLADORES II EN C. TEMA 2
MICROCONTROLADORES II EN C. TEMA 2Luis Zurita
 

Similar a Uso del tmr0 (20)

Guía de ejercicios resueltos y propuestos tema 4
Guía de ejercicios resueltos y propuestos tema 4Guía de ejercicios resueltos y propuestos tema 4
Guía de ejercicios resueltos y propuestos tema 4
 
Examen micros t1_06_solucion
Examen micros t1_06_solucionExamen micros t1_06_solucion
Examen micros t1_06_solucion
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Ejemplo varias interrupciones
Ejemplo varias interrupcionesEjemplo varias interrupciones
Ejemplo varias interrupciones
 
Niple diapopsitiva
Niple   diapopsitivaNiple   diapopsitiva
Niple diapopsitiva
 
Niple diapopsitiva
Niple   diapopsitivaNiple   diapopsitiva
Niple diapopsitiva
 
Niple diapopsitiva
Niple   diapopsitivaNiple   diapopsitiva
Niple diapopsitiva
 
Curso de microcontroladores capitulo 06
Curso de microcontroladores capitulo 06Curso de microcontroladores capitulo 06
Curso de microcontroladores capitulo 06
 
Interrupciones y Temporizadores pucesi
Interrupciones y Temporizadores   pucesiInterrupciones y Temporizadores   pucesi
Interrupciones y Temporizadores pucesi
 
Manejo de Puertos PIC
Manejo de Puertos PICManejo de Puertos PIC
Manejo de Puertos PIC
 
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial
26176947 tutorial-v-escritura-en-lcd-usando-teclado-matricial
 
TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"
 
Ejercicio 07 Timers
Ejercicio 07 TimersEjercicio 07 Timers
Ejercicio 07 Timers
 
Semaforos
SemaforosSemaforos
Semaforos
 
Curso de microcontroladores capitulo 05
Curso de microcontroladores capitulo 05Curso de microcontroladores capitulo 05
Curso de microcontroladores capitulo 05
 
4. interrupciones y temporizadores
4. interrupciones y temporizadores4. interrupciones y temporizadores
4. interrupciones y temporizadores
 
Funcionamiento del Timer 0
Funcionamiento del Timer 0Funcionamiento del Timer 0
Funcionamiento del Timer 0
 
Descripcion detallada del pic 16 f877
Descripcion detallada del pic 16 f877Descripcion detallada del pic 16 f877
Descripcion detallada del pic 16 f877
 
Laboratorio de Microcomputadoras - Práctica 03
 Laboratorio de Microcomputadoras - Práctica 03 Laboratorio de Microcomputadoras - Práctica 03
Laboratorio de Microcomputadoras - Práctica 03
 
MICROCONTROLADORES II EN C. TEMA 2
MICROCONTROLADORES II EN C. TEMA 2MICROCONTROLADORES II EN C. TEMA 2
MICROCONTROLADORES II EN C. TEMA 2
 

Más de Rafael Duran

Ft sistemas 1º y 2º orden
Ft sistemas  1º y 2º ordenFt sistemas  1º y 2º orden
Ft sistemas 1º y 2º ordenRafael Duran
 
Grafica de transitorio matlab e isis de proteus
Grafica de transitorio matlab e isis de proteusGrafica de transitorio matlab e isis de proteus
Grafica de transitorio matlab e isis de proteusRafael Duran
 
Ejemplo de filtros
Ejemplo de filtrosEjemplo de filtros
Ejemplo de filtrosRafael Duran
 
Circuito rl transitorio y frecuencia
Circuito rl transitorio y frecuenciaCircuito rl transitorio y frecuencia
Circuito rl transitorio y frecuenciaRafael Duran
 
Ley de voltajes de Kirchhoff (mallas)
Ley de voltajes de Kirchhoff (mallas)Ley de voltajes de Kirchhoff (mallas)
Ley de voltajes de Kirchhoff (mallas)Rafael Duran
 
Divisores de v e i
Divisores de v e iDivisores de v e i
Divisores de v e iRafael Duran
 
Apuntes filtros activos de 1er y 2o orden
Apuntes filtros activos de 1er y 2o ordenApuntes filtros activos de 1er y 2o orden
Apuntes filtros activos de 1er y 2o ordenRafael Duran
 
Practicas con gals
Practicas con galsPracticas con gals
Practicas con galsRafael Duran
 
Palabra de configuración
Palabra de configuraciónPalabra de configuración
Palabra de configuraciónRafael Duran
 
Arduino introducion
Arduino introducionArduino introducion
Arduino introducionRafael Duran
 
Ejemplos de win cupl
Ejemplos de win cuplEjemplos de win cupl
Ejemplos de win cuplRafael Duran
 
Practicas con arduino
Practicas con arduinoPracticas con arduino
Practicas con arduinoRafael Duran
 
Practicas con u p pic
Practicas con u p picPracticas con u p pic
Practicas con u p picRafael Duran
 
Practicas con arduino
Practicas con arduinoPracticas con arduino
Practicas con arduinoRafael Duran
 
Ciclo w r 24 lc16b
Ciclo w r 24 lc16bCiclo w r 24 lc16b
Ciclo w r 24 lc16bRafael Duran
 
Unidades i y ii dpm
Unidades i y ii dpmUnidades i y ii dpm
Unidades i y ii dpmRafael Duran
 

Más de Rafael Duran (20)

Ft sistemas 1º y 2º orden
Ft sistemas  1º y 2º ordenFt sistemas  1º y 2º orden
Ft sistemas 1º y 2º orden
 
Grafica de transitorio matlab e isis de proteus
Grafica de transitorio matlab e isis de proteusGrafica de transitorio matlab e isis de proteus
Grafica de transitorio matlab e isis de proteus
 
Voltaje eficaz
Voltaje eficazVoltaje eficaz
Voltaje eficaz
 
Ejemplo de filtros
Ejemplo de filtrosEjemplo de filtros
Ejemplo de filtros
 
Circuito rl transitorio y frecuencia
Circuito rl transitorio y frecuenciaCircuito rl transitorio y frecuencia
Circuito rl transitorio y frecuencia
 
Solución tarea 1
Solución tarea 1Solución tarea 1
Solución tarea 1
 
Ley de voltajes de Kirchhoff (mallas)
Ley de voltajes de Kirchhoff (mallas)Ley de voltajes de Kirchhoff (mallas)
Ley de voltajes de Kirchhoff (mallas)
 
Divisores de v e i
Divisores de v e iDivisores de v e i
Divisores de v e i
 
Apuntes filtros activos de 1er y 2o orden
Apuntes filtros activos de 1er y 2o ordenApuntes filtros activos de 1er y 2o orden
Apuntes filtros activos de 1er y 2o orden
 
Practicas con gals
Practicas con galsPracticas con gals
Practicas con gals
 
Palabra de configuración
Palabra de configuraciónPalabra de configuración
Palabra de configuración
 
Arduino introducion
Arduino introducionArduino introducion
Arduino introducion
 
Ejemplos de win cupl
Ejemplos de win cuplEjemplos de win cupl
Ejemplos de win cupl
 
Practicas con arduino
Practicas con arduinoPracticas con arduino
Practicas con arduino
 
Practicas con u p pic
Practicas con u p picPracticas con u p pic
Practicas con u p pic
 
Practicas con arduino
Practicas con arduinoPracticas con arduino
Practicas con arduino
 
Tutorial warp r4
Tutorial warp r4Tutorial warp r4
Tutorial warp r4
 
Ciclo w r 24 lc16b
Ciclo w r 24 lc16bCiclo w r 24 lc16b
Ciclo w r 24 lc16b
 
Unidades iii
Unidades iiiUnidades iii
Unidades iii
 
Unidades i y ii dpm
Unidades i y ii dpmUnidades i y ii dpm
Unidades i y ii dpm
 

Uso del tmr0

  • 1. Cibernética y Mecatrónica Microcontroladores Escuela de Ingeniería Ing. Rafael Durán Campoamor Uso de timer como generador de base de tiempos Se desea realizar una temporización de 0.5 s utilizando el TMR0 del PIC16F84A. La frecuencia de trabajo del PIC es de 4 MHz, por lo que el timer incrementa su cuenta cada µs (Tosc= ) dicho lo anterior debemos contar 500,000µs. 500,000=(estados a contar)*(TMR0)*(Prescaler)*(contador) Si el máximo es 256 selecciono un valor multiplo de 500,000, en este caso 250, este valor se asigna al TMR0 256-250=6, entonces el prescaler seleccionado será el más cercano es 8 Prescaler=8*valor de contador Prescaler=8*250µs=2,000µs cargando el TMR0 a 250 Si repito lo anterior cargando el timer 250 veces con ese valor obtenemos en un ciclo 500,000µs (250*2,000 ) Otro ejemplo: se desea una temporización de 10ms utilizando el TMR0 10,000/250=40 256-40=216; cargamos el TMR0 con 216 Temp=10 ms; Prescaler=10000us/(216*1us) Prescaler=256*40us=10240us ó 10.24ms (me paso por 240us) Si selecciono 217 como valor de TMR0 entonces tendremos, Prescaler=256*39us=9,984us (diferencia de 16us) el segundo caso es más exacto. 27/10/2011 Página 1
  • 2. Cibernética y Mecatrónica Microcontroladores Escuela de Ingeniería Ing. Rafael Durán Campoamor Ejemplo de programacion del pic ;-------Configuración de puertos------- ORG 0x00 GOTO inicio ORG 0x04 ; Atiendo la interrupción BTFSS PORTB,0 ; si el LED está apagado GOTO LED ; voy a LED y lo enciendo BCF PORTB,0 ; sino apago el LED BCF INTCON,2 ; limpio la bandera T0IF RETFIE ; regreso habilitando la interrupción LED BSF PORTB,0 ; enciendo el LED BCF INTCON,2 ; borro la bandera T0IF RETFIE ; regreso habilitando la interrupción inicio BSF STATUS,5 ; configurando puertos CLRF TRISB ; puerto B es salida MOVLW 0x07 ; cargo w con 00000111 MOVWF OPTION_REG ; el Divisor = 256 BCF STATUS,5 olvide cambiar el MOVLW 0xA0 ; cargo w con 10100000 dato dato MOVWF INTCON ; habilitamos GIE y T0IE CLRF PORTB ; limpiamos PORTB tiempo MOVLW 0xD9 ; cargo w con 217 MOVWF TMR0 ; lo paso a TMR0 NADA BTFSS INTCON,2 ; me quedo haciendo nada GOTO NADA ; hasta que TMR0 desborde, y entonces GOTO tiempo ; volveré a cargar TMR0 ;------------------------------------------ END 27/10/2011 Página 2