"E:\Programmi\Microchip\MPLABX\mpasmx\mplink.exe" -p16f84a -w -x -u_DEBUG -z__ICD2RAM=1 -m"dist/default/debug/int.X.debug.map" -z__MPLAB_BUILD=1 -z__MPLAB_DEBUG=1 -odist/default/debug/int.X.debug.cof build/default/debug/int.o
make[2]: *** [dist/default/debug/int.X.debug.cof] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
MPLINK 5.00, LINKER
Device Database Version 1.17
Copyright (c) 1998-2013 Microchip Technology Inc.
Error - section '.org_2' can not fit the absolute section. Section '.org_2' start=0x00000004, length=0x0000004c
Errors : 1
make[2]: Leaving directory `E:/Documents and Settings/Rudy/MPLABXProjects/int.X'
make[1]: Leaving directory `E:/Documents and Settings/Rudy/MPLABXProjects/int.X'
BUILD FAILED (exit value 2, total time: 906ms)
il codice scritto da tanzilli è il seguente:
- Codice: Seleziona tutto
PROCESSOR 16F84
RADIX DEC
INCLUDE "P16F84.INC"
;Setup of PIC configuration flags
;XT oscillator
;Disable watch dog timer
;Enable power up timer
;Disable code protect
__CONFIG 3FF1H
LED1 EQU 0
LED2 EQU 1
LED3 EQU 2
LED4 EQU 3
ORG 0CH
Count RES 2
nTick RES 1 ;Registro utilizzato per contare il numero di
;lampeggi del LED 1
;Reset Vector
;Punto di inizio del programma al reset della CPU
ORG 00H
;Salta al corpo principale del programma. Questo jump ? necessario
;per evitare tutta la parte di codice per la gestione degli
;interrupt.
goto Start
;Interrupt vector
;Punto di inizio per tutte le subroutine di gestione degli interrupt
ORG 04H
;**********************************************************************
; Interrupt handler
;**********************************************************************
;Accende il led 2 per segnalare che c'e' stato un interrupt
bsf PORTB,LED2
;Inizializza il contatore di lampeggi del LED1
movlw 3
movwf nTick
;Azzera nuovamente il flag RBIF per consentire all'interrupt di
;ripetersi
bcf INTCON,RBIF
;Ritorna al programma principale
retfie
;**********************************************************************
; Programma principale
;**********************************************************************
Start:
;Commuta sul secondo banco dei registri per accedere ai registri TRISA e TRISB
bsf STATUS,RP0
;Definizione delle linee di I/O (0=Uscita, 1=Ingresso)
;Definizione della porta A
movlw 00011111B
movwf TRISA & 7FH
;Definizione della porta B
;Le linee da RB0 a RB3 vengono programmate in uscita per essere collegate ai quattro
led
;Le linee da RB4 a RB7 vengono programmate in ingresso per essere collegate ai quattro
pulsanti
movlw 11110000B
movwf TRISB & 7FH
;Commuta sul primo banco dei registri
bcf STATUS,RP0
;Spegne tutti i led collegati sulla porta B
bcf PORTB,LED1
bcf PORTB,LED2
bcf PORTB,LED3
bcf PORTB,LED4
;Abilita l'interrupt sul cambiamento di stato delle linee RB4,5,6,7
movlw 10001000B
movwf INTCON
;**********************************************************************
; Loop principale
;**********************************************************************
MainLoop
call Delay ;Ritardo software
btfss PORTB,LED1 ;Led acceso ?
goto TurnOnLed1 ;No, lo accende
goto TurnOffLed1 ;Si, lo spegne
;Accensione led e decremento del contatore di lampeggi
TurnOnLed1
bsf PORTB,LED1
;Controlla se LED 2 di segnalazione dell'interrupt e' gia acceso.
;Se e' acceso decrementa il contatore nTick ad ogni lampeggio di
;LED1. Quando nTick vale 0 spegne LED 2
btfss PORTB,LED2 ;LED2 acceso ?
goto MainLoop ;No, continua a lampeggiare
decf nTick,1 ;Si, decrementa nTick
btfss STATUS,Z ;nTick = 0 ?
goto MainLoop ;No, continua a lampeggiare
bcf PORTB,LED2 ;Si, spegne LED2
goto MainLoop ;Continua a lampeggiare
;Spegnimento led
TurnOffLed1
bcf PORTB,LED1 ;Spegne LED 1
goto MainLoop ;Continua a lampeggiare
;**********************************************************************
; Subroutine
;**********************************************************************
;Subroutine di ritardo software
Delay
clrf Count
clrf Count+1
DelayLoop
decfsz Count,1
goto DelayLoop
decfsz Count+1,1
goto DelayLoop
return
END
che c'è che non va?

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)


