Hola:
Con este código me da error y no se que falla ni coom corregirlo. Uso MPLAB X v2.00.
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make -f nbproject/Makefile-default.mk dist/default/production/Motor_DC_PIC16F88.X.production.hex
make[2]: Entering directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
"C:\Program Files (x86)\Microchip\MPLABX\mpasmx\mpasmx.exe" -q -p16f88 -l"build/default/production/Motor_DC_PIC16F88.lst" -e"build/default/production/Motor_DC_PIC16F88.err" -o"build/default/production/Motor_DC_PIC16F88.o" "Motor_DC_PIC16F88.asm"
Message[302] D:\ELECTRONICA\PIC\MOTOR DC PIC16F88\MOTOR_DC_PIC16F88.X\MOTOR_DC_PIC16F88.ASM 46 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[313] D:\ELECTRONICA\PIC\MOTOR DC PIC16F88\MOTOR_DC_PIC16F88.X\MOTOR_DC_PIC16F88.ASM 181 : CBLOCK constants will start with a value of 0.
"C:\Program Files (x86)\Microchip\MPLABX\mpasmx\mplink.exe" -p16f88 -w -m"dist/default/production/Motor_DC_PIC16F88.X.production.map" -z__MPLAB_BUILD=1 -odist/default/production/Motor_DC_PIC16F88.X.production.cof build/default/production/Motor_DC_PIC16F88.o
MPLINK 5.00, LINKER
Device Database Version 1.17
Copyright (c) 1998-2013 Microchip Technology Inc.
Error - section 'Variables' can not fit the section. Section 'Variables' length=0x00000012
Errors : 1
make[2]: Leaving directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make[1]: Leaving directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make[2]: *** [dist/default/production/Motor_DC_PIC16F88.X.production.hex] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 2s)
Con este código me da error y no se que falla ni coom corregirlo. Uso MPLAB X v2.00.
Código:
; ZONA DE DATOS **********************************************************************
LIST P=16F88
INCLUDE <P16F88.INC>
__CONFIG _CONFIG1, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _XT_OSC
__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF
__IDlOCS 0001 ; Versión del programa.
Variables UDATA_SHR
RAM RES 1
RAM_1 RES 1
RAM_2 RES 1
RAM_3 RES 1
RAM_4 RES 1
RAM_5 RES 1
RAM_6 RES 1
RAM_7 RES 1
RAM_8 RES 1
RAM_9 RES 1
RAM_10 RES 1
RAM_11 RES 1
RAM_12 RES 1
RAM_13 RES 1
RAM_14 RES 1
RAM_15 RES 1
RAM_16 RES 1
RAM_17 RES 1
#DEFINE Pulsador_1 PORTA,4 ; Pulsador conectado a RA4.
#DEFINE Pulsador_2 PORTA,3 ; Pulsador conectado a RA3.
#DEFINE Pulsador_3 PORTA,2 ; Pulsador conectado a RA2.
#DEFINE Pul_STOP PORTA,1 ; Pulsador de parada del motor.
#DEFINE Motor PORTB,7 ; Línea donde se conecta el motor.
#DEFINE Led_1 PORTB,6 ; Led 1.
#DEFINE Led_2 PORTB,5 ; Led 2.
#DEFINE Led_3 PORTB,4 ; Led 3.
; ZONA DE CÓDIGOS ********************************************************************
ORG 0 ; El programa comienza en la dirección 0.
Inicio
BANKSEL ANSEL ; Acceso al Banco 1.
clrf ANSEL
bsf Pulsador_1 ; La línea RA4 se configura como entrada.
bsf Pulsador_2 ; La línea RA3 se configura como entrada.
bsf Pulsador_3 ; La línea RA2 se configura como entrada.
bsf Pul_STOP ; La línea RA1 se configura como entrada.
bcf Motor ; Se configura como salida.
bcf Led_1 ; Led de aviso 5 minutos en activo.
bcf Led_2 ; Led de aviso 10 minutos en activo.
bcf Led_3 ; Led de aviso 20 minutos en activo.
BANKSEL PORTB ; Acceso al Banco 0.
bcf Motor ; En principio Motor apagado igual
bcf Led_1 ; que los Leds.
bcf Led_2
bcf Led_3
Principal
btfsc Pulsador_1 ; ¿Pulsador presionado?, ¿(Pulsador)=0?
goto Fin ; No. Vuelve a leerlo.
call Retardo20ms ; Espera que se estabilicen los niveles de tensión.
btfsc Pulsador_1 ; Comprueba si es un rebote.
goto Fin ; Era un rebote y sale fuera.
bsf Motor ; Activa el motor y
bsf Led_1 ; enciende el Led 1 que significa
call Retardo5m ; los 5 minutos encendido.
bcf Motor ; Apaga el motor y
bcf Led_1 ; el Led 1.
EsperaDejePulsar_1
btfss Pulsador_1 ; ¿Dejó de pulsar?. ¿(Pulsador)=1?
goto EsperaDejePulsar_1 ; No. Espera que deje de pulsar.
Fin
btfsc Pulsador_2 ; ¿Pulsador presionado?, ¿(Pulsador)=0?
goto Fin2 ; No. Vuelve a leerlo.
call Retardo20ms ; Espera que se estabilicen los niveles de tensión.
btfsc Pulsador_2 ; Comprueba si es un rebote.
goto Fin2 ; Era un rebote y sale fuera.
bsf Motor ; Activa el motor y
bsf Led_2 ; enciende el Led 2 que significa
call Retardo10m ; los 10 minutos encendido.
bcf Motor ; Apaga el motor y
bcf Led_2 ; el Led 2.
EsperaDejePulsar_2
btfss Pulsador_2 ; ¿Dejó de pulsar?. ¿(Pulsador)=1?
goto EsperaDejePulsar_2 ; No. Espera que deje de pulsar.
Fin2
btfsc Pulsador_3 ; ¿Pulsador presionado?, ¿(Pulsador)=0?
goto Fin3 ; No. Vuelve a leerlo.
call Retardo20ms ; Espera que se estabilicen los niveles de tensión.
btfsc Pulsador_3 ; Comprueba si es un rebote.
goto Fin3 ; Era un rebote y sale fuera.
bsf Motor ; Activa el motor y
bsf Led_3 ; enciende el Led 3 que significa
call Retardo20m ; los 10 minutos encendido.
bcf Motor ; Apaga el motor y
bcf Led_3 ; el Led 3.
EsperaDejePulsar_3
btfss Pulsador_3 ; ¿Dejó de pulsar?. ¿(Pulsador)=1?
goto EsperaDejePulsar_3 ; No. Espera que deje de pulsar.
Fin3 goto Principal
; Subrutinas ****************************************************************
Retardo20ms
;199993 cycles
movlw 0x3E
movwf RAM_8
movlw 0x9D
movwf RAM_9
Retardo20ms_0
decfsz RAM_8, f
goto $+2
decfsz RAM_9, f
goto Retardo20ms_0
;3 cycles
goto $+1
nop
;4 cycles (including call)
return
Retardo5m
;299999995 cycles
movlw 0x54
movwf RAM_10
movlw 0xA1
movwf RAM_11
movlw 0xFD
movwf RAM_12
movlw 0x02
movwf RAM_13
Retardo5m_0
decfsz RAM_10, f
goto $+2
decfsz RAM_11, f
goto $+2
decfsz RAM_12, f
goto $+2
decfsz RAM_13, f
goto Retardo5m_0
;1 cycle
nop
;4 cycles (including call)
return
Retardo10m
;599999992 cycles
movlw 0xA9
movwf RAM_4
movlw 0x41
movwf RAM_5
movlw 0xFA
movwf RAM_6
movlw 0x04
movwf RAM_7
Retardo10m_0
decfsz RAM_4, f
goto $+2
decfsz RAM_5, f
goto $+2
decfsz RAM_6, f
goto $+2
decfsz RAM_7, f
goto Retardo10m_0
;4 cycles
goto $+1
goto $+1
;4 cycles (including call)
return
cblock
RAM
RAM_1
RAM_2
RAM_3
endc
Retardo20m
;1199999995 cycles
movlw 0x54
movwf RAM_14
movlw 0x82
movwf RAM_15
movlw 0xF3
movwf RAM_16
movlw 0x08
movwf RAM_17
Retardo20m_0
decfsz RAM_14, f
goto $+2
decfsz RAM_15, f
goto $+2
decfsz RAM_16, f
goto $+2
decfsz RAM_17, f
goto Retardo20m_0
;1 cycle
nop
;4 cycles (including call)
return
END
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make -f nbproject/Makefile-default.mk dist/default/production/Motor_DC_PIC16F88.X.production.hex
make[2]: Entering directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
"C:\Program Files (x86)\Microchip\MPLABX\mpasmx\mpasmx.exe" -q -p16f88 -l"build/default/production/Motor_DC_PIC16F88.lst" -e"build/default/production/Motor_DC_PIC16F88.err" -o"build/default/production/Motor_DC_PIC16F88.o" "Motor_DC_PIC16F88.asm"
Message[302] D:\ELECTRONICA\PIC\MOTOR DC PIC16F88\MOTOR_DC_PIC16F88.X\MOTOR_DC_PIC16F88.ASM 46 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[313] D:\ELECTRONICA\PIC\MOTOR DC PIC16F88\MOTOR_DC_PIC16F88.X\MOTOR_DC_PIC16F88.ASM 181 : CBLOCK constants will start with a value of 0.
"C:\Program Files (x86)\Microchip\MPLABX\mpasmx\mplink.exe" -p16f88 -w -m"dist/default/production/Motor_DC_PIC16F88.X.production.map" -z__MPLAB_BUILD=1 -odist/default/production/Motor_DC_PIC16F88.X.production.cof build/default/production/Motor_DC_PIC16F88.o
MPLINK 5.00, LINKER
Device Database Version 1.17
Copyright (c) 1998-2013 Microchip Technology Inc.
Error - section 'Variables' can not fit the section. Section 'Variables' length=0x00000012
Errors : 1
make[2]: Leaving directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make[1]: Leaving directory `D:/Electronica/PIC/Motor DC PIC16F88/Motor_DC_PIC16F88.X'
make[2]: *** [dist/default/production/Motor_DC_PIC16F88.X.production.hex] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 2s)