Hola amigos este es mi primer post, como conozco poco taringa he estado recorriendo post por ahí y no encontré a nadie que se dedique a hacer programas en assembler (lenguaje ensamblador) para programar pic´s. Bueno como soy novato quiero empezar por pedir disculas por mi pobre e humilde post. Espero que les sirva este programita que armé para contabilizar tiempo con el TMR0. (ah por cierto es para el pic 16F690 de microchip)
;Encender led de forma intermitente con TMR0
include "P16f690.inc"
;defino registros------------------------------------------------------------------
CONTADOR EQU 0X20
;defino constantes-----------------------------------------------------------------
RC0 EQU 0
RP0 EQU 5
TOIF EQU 2
;----------------------------------------------------------------------------------
ORG 0
GOTO INICIALIZAR
;----------------------------------------------------------------------------------
INICIALIZAR
BSF STATUS,RP0
CLRF TRISC
MOVLW 10000101
MOVWF OSCCON
BCF STATUS,RP0
MOVLW 11111101
MOVWF CONTADOR
CLRF PORTC
;----------------------------------------------------------------------------------
PULSADOR
BSF PORTC,RC0
CALL RETARDO
BCF PORTC,RC0
CALL RETARDO
GOTO PULSADOR
;----------------------------------------------------------------------------------
RETARDO
MOVLW 11111101
MOVWF TMR0
COMF TMR0,1
BSF STATUS,RP0
MOVLW 00000011
MOVWF OPTION_REG
BCF STATUS,RP0
;----------------------------------------------------------------------------------
BANDERA
BTFSS INTCON,TOIF
GOTO BANDERA
BCF INTCON,TOIF
DECFSZ CONTADOR,1
GOTO RETARDO
RETURN
END
Acá dejo la imagen de un pequeño ejemplo.