LIST P=PIC12F629
#include <P12F629.INC>
;libreria para el 12F629
ERRORLEVEL -302
;Suprime mensajes tipicos de advertencia del compilador
__CONFIG _CP_OFF & _CPD_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON &_INTRC_OSC_NOCLKOUT & _MCLRE_OFF
;Aca te pongo lo que quiere decir lo de arriba
;Proteccion de codigo OFF;Proteccion EEPROM OFF;Perro Guardian OFF;
Brown Out Detection OFF;Power up Timer ON;Oscilador Interno Sin clockout
;PIn GP3 como MCLR? OFF
PrimerVariable EQU 0X20
;la pos 0x20 de memoria es la primera asignable a GPR
ORG H"0000"
GOTO INICIO
;vector de reset, ir a INICIO
ORG H"0004"
GOTO INICIO
;vector de INTERRUPCIONES, ir a INICIO
; INICIO DEL PROGRAMA
ORG H"0005"
INICIO BCF STATUS,RP0 ;seleccionar Banco 0
CLRF GPIO ;Limpiar Basuras del GPIO
MOVLW 07h
MOVWF CMCON ;TODOS LOS PINES EN MODO DIGITAL
BSF STATUS,RP0 ;SELECCIONO BANCO 1
MOVLW B"11101111" MOVWF GPIO
;GP0,GP1,GP2,GP3,GP5 como en entradas
;GP4 como salida
;conecta los pines N/A(GPIO,1,GPIO,3,GPIO,5) a masa o 5v, como tu desees.
CALL CALIBRAROSC
MOVWF OSCCAL
CLRF INTCON ;deshabiitar interrupciones
BCF STATUS,RP0
CLRF GPIO ;Volver al banco 0
;aca comenzaria tu programa
;al final pones esto:
ORG 0X3FF
CALIBRAROSC RETLW 0x80 ;calibro oscilador a 4 mhz +- 2%
Exitos.
