Anda di halaman 1dari 2

#INCLUDE <P16F628A.

INC>(Modelo do PIC muda apenas as verso)


__CONFIG _BODEN_ON & _CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF
& _MCLRE_ON & _XT_OSC (No se muda, caso queira muda)
#DEFINE
BANK0 BCF STATUS,RP0 (Seta os bancos)
#DEFINE
BANK1 BSF STATUS,RP0
CBLOCK
0x20 (Seta o relgio)
TEMPO1
TEMPO2
TEMPO3
ENDC (finaliza as instrues iniciais)
#DEFINE
LED PORTB,0 (no coloca-se espao, coloca ligados com qualquer letra, seno
d erro), no usa as mesmas portas.
Pode-se acrescentar as definies
ORG 0X00 (vetor de resete reinicia do zero)
GOTO INICIO
ORG 0X04 (vetor de interrupo, ou seja pausa )
RETFIE
DELAY (tempo)
MOVLW
MOVWF

.5 (move para a area de trabalho)


TEMPO3
(executar a instruo de acordo com o tempo instrudo)

MOVLW
MOVWF

.100
TEMPO2

MOVLW
MOVWF

.100
TEMPO1

DL3
DL1
DL2
NOP
NOP
DECFSZ
GOTO DL2

TEMPO1,F

DECFSZ
GOTO DL1

TEMPO2,F

DECFSZ
GOTO DL3

TEMPO3,F

RETURN

INICIO
BANK0 (posio do banco de memoria "No mexe no momento)
MOVLW
B'00000111'
MOVWF
CMCON
CLRF PORTA (limpa as informao das portas)
CLRF PORTB
BANK1
MOVLW
MOVWF

B'00000000' (sadas de informaes)


TRISA

MOVLW
MOVWF

B'00000000'
TRISB

MOVLW
MOVWF

B'10000000'
OPTION_REG( registradores e flag, no mexe)

MOVLW
MOVWF

B'00000000'
INTCON

BANK0 (Banco)
MAIN
BSF LED (Bit Set Fail), Seta da Saida), acende o led)
CALL DELAY (acende o led e d um tempo
BCF LED (Bit Clear fail), apaga o led)
CALL DELAY (apaga ou acende o led e d um tempo
GOTO MAIN(Vai para o inicio)
END (Termina)

Anda mungkin juga menyukai