I'm using MPLAB IDE to simulate a flashing LED for 1,100,000 seconds.
But I can not. It always goes more or less.
I wish you could give me a tip. Or some formula on how to calculate the nop and loop that I should put.
LIST P=PIC16F628A
RADIX DEC
#INCLUDE <P16F628A.INC>
__CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON & _BODEN_OFF & _LVP_OFF & _CP_OFF & _MCLRE_OFF
;ou __CONFIG H'3F10'
CBLOCK 0x20 ;ENDEREÇO INICIAL DA MEMÓRIA DE
;USUÃRIO
CONTADOR1
CONTADOR2
ENDC ;FIM DO BLOCO DE MEMÓRIA
ORG 0x00 ;ENDEREÇO INICIAL DE PROCESSAMENTO
INICIO
CLRF PORTA ;LIMPA O PORTA
CLRF PORTB ;LIMPA O PORTB
BSF STATUS, RP0
CLRF TRISB
BCF STATUS, RP0
REPETE
BSF PORTB, 1
BSF PORTB, 1
CALL ATRASO0
BCF PORTB, 1
CALL ATRASO2
GOTO REPETE
ATRASO0
NOP
NOP
NOP
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
CALL ATRASO1
ATRASO1
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
RETURN
ATRASO2
NOP
NOP
NOP
NOP
NOP
NOP
NOP
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
CALL ATRASO3
ATRASO3
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
RETURN
;
RETURN
END
END