Programa De Un Transfer De Energia Con PIC12f683
Enviado por Faperezreyes • 14 de Abril de 2014 • 505 Palabras (3 Páginas) • 337 Visitas
;Universidad APEC.
;Laboratorio de Microprocesadores I.
;Programa para transferencia de fuentes de energia, CDE Planta de emergencia
;Microcontrolador PIC12f683
;Autor Francisco Alberto Perez Reyes
;Matricula 20112368
;Presentado a Prof. Emin Rivera
;Fecha 14/03/2014
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
List P=12F683 ;Directiva para elegir el tipo de procesador que voy a utilizar.
#Include <P12F683.INC> ;Incluye en el programa el fichero de definiciones de los registros del Micro.
;Con esta linea de codigo hacemos algunas configuraciones
__CONFIG _FCMEN_ON & _IESO_OFF & _CP_OFF & _CPD_OFF & _BOD_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0x00;Inicio del programa.
goto Configuracion ;Saltamos a la subrutina Configuracion.
org 0x04 ;Comenzamos desde la direccion 0x04 Interrupt Vector.
Configuracion
; En esta parte se realizan las configuraciones de los Puertos, Comparador, ETC.
banksel TRISIO;Nos dirigimos al banco donde se encuentra el registro TRISIO.
movlw 0x0B;Cargamos 11D al acumulador W. Config.
movwf ANSEL;Movemos el valor del acumulador al registro ANSEL. COnfig.
movlw 0xD7;Cargamos el acumulador con valor D7H. Config.
movwf TRISIO;Movemos el valor del acumulador al registro TRISIO. Config.
movlw 0x03;Cargamos el acumulador con valor 03H.
movwf OPTION_REG;Movemos al registro OPTION_REG El valor del acumulador.
bcf STATUS,5 ;Nos movemos al banco de trabajo, Banco .
banksel GPIO;Seleccionamos el banco donde se encuentra el registro GPIO.
clrf GPIO;Borramos el valor del registro f.
movlw 0x01;Cargamos el acumulador con valor 1. Config.
movwf CMCON0;Movemos el valor del acumulador al registro CMCON0. Config
;Programa, repeticion ciclica.
Inicio btfss GPIO,3 ;Probamos si GPIO esta a 1.
goto X1 ;Saltos***
goto X2
X1 bsf GPIO,5 ;Ponemos a 1 GPIO5.
bcf GPIO,4 ;Ponemos a 0 GPIO4.
goto Inicio ;Y saltamos a etiqueta Inicio.
X2 btfss CMCON0,6
goto SI
goto X1
SI btfss GPIO,3
goto X1
goto X3
X4 bsf GPIO,4
bcf GPIO,5
goto Inicio
X3 clrf TMR0;Borramos valor de TMR0.
movlw 0x2E;Cargo W con el numero 46
movwf 0x20;Cargo el registro 20h con el valor de W
X5 btfsc CMCON0,6;Revisar el resultado del
...