Autor Tema: TIEMPO  (Leído 6523 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado YF-21

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 185
TIEMPO
« en: 02 de Mayo de 2004, 18:26:00 »
TIEMPO

Pues bueno, revisando algunos tutoriales del pic 16F84 me encontré con esto :

Un ciclo de instruccion es igual a 4 ciclos de reloj, y el ciclo de reloj lo define el oscilador externo al PIC, por ejemplo si tenemos como oscilador un cristal de cuarzo de frecuencia de 4Mhz, entonces el ciclo de reloj será = 0.25 microsegundos. Por lo tanto el cilco de instruccion será 4X0.25=1 microsegundo ...

Ahora, si tengo un cristal de 20 Mhz entonces el ciclo de reloj será de 5 microsegundos ¿no?

Y lo siguiente es ... algunas instrucciones tardan mas en realizarse que otras ¿o no?

Además ... FORMULA PARA CALCULAR EL TIEMPO
T=CI X TMR0 X DF

CI = ciclo de instruccion
TMR0 = Valor cargado en este registro
DF = Rango escogido en el divisor de frecuencia

Esta formula solo funciona para calcular tiempos usando el registro TMR0 como temporizador verdad ??

Para finalizar, baje el programa para calcular tiempos pero ¿?
Podrían explicarme lo siguiente :

Aparecen las ventanas PERIODO, FRECUENCIA, RETARDO
en frecuencia va el valor del cristal
en retardo va el valor del tiempo que le quiero poner (en ms)
pero en periodo ¿?

¿Por que me interesa tanto el tiempo? PORQUE HAY MAS TIEMPO QUE VIDA  

Desconectado joscar66

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 117
RE: TIEMPO
« Respuesta #1 en: 03 de Mayo de 2004, 14:00:00 »
shikiorochinagui:

Para empezar veo que estas un poco confundido con las diferentes frecuencias de los cristales de quarzo.
Es cierto que si tienes un cristal de 4MHz el ciclo de instruccion es de 1 microsegundo, pero con un cristal de 20MHz el ciclo de instruccion es de solo 0.2 microsegundos, es decir, a mayor frecuencia mas rapido se ejecutan las instrucciones.
Cabe recordarte que cada microcontrolador tiene su limite para el oscilador.

En cuanto al programa delay, en la casilla de periodo no debes poner nada, si te das cuenta al cambiar el oscilador se cabmbia el valor del periodo. Asi para 4MHz Periodo 1uS, 10MHz 0.2uS.

Espero que esto te sirva.
Esfuércense por ser mejor cada día...
¡Saludos desde COLOMBIA!

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: TIEMPO
« Respuesta #2 en: 05 de Mayo de 2004, 09:25:00 »
A diferencia de los microprocesadores, los códigos de operación de los PIC tardan 4 ciclos de reloj en ejecutarse Shikioro. Los códigos en los que el PIC realiza saltos tardan 2 ciclos (goto, incfsz, retlw, etc.).

Si estás haciendo el programa del contador que me platicaste, también puedes eliminar los rebotes del PushButton agregándole un capacitor de 1uF en paralelo, aparte de eliminar los rebotes vía software (subrutinas de tiempo).

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: TIEMPO
« Respuesta #3 en: 05 de Mayo de 2004, 10:57:00 »
Si mal no recuerdo del viejo y querido amigo ensamblador, las instrucciones eran de 1 C.M. salvo algunas que duraban 2 C.M.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4154
RE: TIEMPO
« Respuesta #4 en: 06 de Mayo de 2004, 00:57:00 »
Exacto, las de salto y call tardan 2 ciclos máquina
F.
Todos los días se aprende algo nuevo.

Desconectado YF-21

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 185
RE: TIEMPO
« Respuesta #5 en: 06 de Mayo de 2004, 20:05:00 »
Gracias camaradas,  yo por acá ando algo falto de tiempo pero el fin de semana prosigo mis clases del pic  

y lo ultimo que les quería preguntar es acerca del proteus , ¿Es simulador en tiempo real (el tiempo del pic es fiel al de la simulacion en el proteus) ?