TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: pablete en 09 de Agosto de 2014, 12:38:06

Título: Tiempo usado para ejecutar intrucciones
Publicado por: pablete en 09 de Agosto de 2014, 12:38:06
Hola buenas,
Resulta que hice un programa para generar retrasos en un pulso de salida, segun la frecuencia de pulsos de entrada.
En la simulacion funciona bien. Cuando voy a la practica, no se cumplen los tiempos que necesito.
Yo estimo que es una cuestion que no estoy teniendo en cuenta el tiempo que usa el pic para ejecutar cada instruccion, por eso seguramente debo considerar ese tiempo para hacer las correcciones que necesito.
El tema es: hay alguna forma rapida, mediante el compilador (ccs c) para saber que tiempo le lleva al pic procesar cada instruccion?
Desde ya gracias
Título: Re: Tiempo usado para ejecutar intrucciones
Publicado por: thegame en 09 de Agosto de 2014, 13:33:27
mmm creo que seria mas facil por ejemplo com MPLAB o MPLAB X, yo asi lo hago por ejemplo para checar los tiempos de desbordamiento de interrupciones de timers, colocas breakpoints en el bloque de instrucciones o instruccion que quires checar, abres la herramienta stopwatch, configurado con la frecuencia del cristal que tengas o a la que estes trabajando, y ejecutas, te dara como resultado el tiempo que tarda en ejecutarse.

Saludos
Título: Re: Tiempo usado para ejecutar intrucciones
Publicado por: Miquel_S en 09 de Agosto de 2014, 14:07:55
mmm creo que seria mas facil por ejemplo com MPLAB o MPLAB X, yo asi lo hago por ejemplo para checar los tiempos de desbordamiento de interrupciones de timers, colocas breakpoints en el bloque de instrucciones o instruccion que quires checar, abres la herramienta stopwatch, configurado con la frecuencia del cristal que tengas o a la que estes trabajando, y ejecutas, te dara como resultado el tiempo que tarda en ejecutarse.

Saludos
OJO con la frecuencia.

Publicado por sander:
Supongo que estas usando el simulador del MPLABX, buscas en las propiedades del proyecto, ahí te aparece las opciones para el simulador, buscas
Instruction execution frequency (Fcyc) y colocas el valor de cristal dividido entre cuatro, es decir los MIPS (la frecuencia real a la que se ejecutan las instrucciones)


Título: Re: Tiempo usado para ejecutar intrucciones
Publicado por: thegame en 09 de Agosto de 2014, 19:31:04
Y si es en MPLAB con el debbuger MPLAB SIM es aqui:

(http://www.todopic.com.ar/foros/imgtiny/34dk60h.jpg)