Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

15/04/2016 #1


Duda en lenguaje ensamblador para PIC
Hola.
Esta es mi primer pregunta en el foro.
Quisiera consultarlos sobre una instrucción de un macro que leí de un application note;
Copio aquí parte del código;

WAIT:MACRO TIME
;Delay for TIME µs.
;Variable time must be in multiples of 5µs.
MOVLW (TIME/5) - 1 ;1µs to process
MOVWF TMP0 ;1µs to process
CALL WAIT5U ;2µs to process
ENDM

Mi duda es la siguiente. En la línea que dice MOVLW (TIME/5) - 1; ¿se puede usar la división (/) en el assembler de los pic\'s?
Corrí el simulador del mplab paso a paso con varios valores de TIME y veo que efectivamente hace la división y la hace bien pero no encontré nada en internet de hacer la división así y dado que esto es parte de una rutina que controla tiempos, es importante saber cuantos ciclos tomaría ejecutar esa instrucción.
Según la hoja que estoy leyendo, toma solo un ciclo y lo utilizan alegremente.
Dejo acá el link del documento que estoy leyendo: maximintegrated.com/en/app-notes/index.mvp/id/2420
Espero se haya entendido lo que quiero consultar y desde ya muchas gracias por su ayuda.
Saludos.- ...
15/04/2016 #2

Avatar de ByAxel

Hola.
Dime, TIME esta declarado como variable o constante?, has probado distintos valores en el mismo tiempo de ejecución?.

Sucede que si se pueden realizar distintos tipos de operaciones sin embargo el que se considera es el resultado del mismo y se toma como constante... dicho valor constante es el que realmente va grabado en el PIC.

Saludos.
15/04/2016 #3

Avatar de Daniel Meza

Agregando a lo que dice el compañero Axel, esa división la ejecuta el ensamblador en si, no el micro. Al final de cuentas esa instrucción se grabará en el micro como movlw K, y será ya el resultado de la operación.

Incluso ve el comentario

Variable time must be in multiples of 5µs
Para que el resultado sea entero siempre.

Saludos y bienvenido al foro.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.