Ando traduciendo un 'if' en 'c', a asm, para que sea rápido, y no consigo hacerlo funcionar bien, el código es este, espero una ayuda:
en C:
ContBaseTiempo --;
if(ContBaseTiempo.tot == 0)
{
output_bit(LED ,!input_state(LED));
ContBaseTiempo.tot = BASE_TIEMPO;
}
En asm:
movlw 1
subwf ContBaseTiempo.bt[0],f ;parte baja de la variable
btfss STATUS,C
goto Sigue
subwf ContBaseTiempo.bt[1],f ;parte alta de la variable
btfss STATUS,Z
goto Sigue
goto Dentro_if
Dentro_if
;cuerpo del if
Sigue
;fuera del if
Saludos.