hola que tal gracias por ayudarme, estoy treatando de utilizar el tmro para hacer un retardo y resulta que en la simulacion anda bien pero cuando lo pruebo fisicamente no anda.
Es decir lo que hace el programa hacre que prenda un led por 50 mseg y apagarlo por 50mseg pero ni prende ni apaga, no se donde puede estar el problema.
Gracias por todo.
Este es el codigo
list P=16F877
#include P16F877.INC
__CONFIG _HS_OSC & _PWRTE_ON & _BODEN_OFF & _CP_OFF & _WDT_OFF
;*******************************************************************
; Declaración de variables que voy a utilizar en el programa
;*******************************************************************
Flag EQU H'22'
RB1 EQU D'01'
org 00h
goto configurar
org 04h
movlw B'00000001'
movwf TMR0 incf Flag,1
bcf INTCON,2
retfie
org 012h
configurar movlw B'00000000'
movwf Flag
movlw B'10100000'
movwf INTCON ; habilitamos GIE y T0IE
clrf STATUS
bsf STATUS,RP0
movlw B'00000111'
movwf OPTION_REG
movlw B'00000000'
movwf TRISB
bcf STATUS,RP0
clrf PORTB goto main
retardo btfss Flag,1
goto retardo
return
main bsf PORTB,RB1 ;prende un led
movlw B'00000001' ; cargo w con 1
movwf TMR0 ; lo paso a TMR0
call retardo
bcf PORTB,RB1 ;Apaga el led
movlw B'00000000'
movwf Flag
call retardo
goto main
end