- Codice: Seleziona tutto
// Opzioni di configurazione.
// Qui di seguto ci sono le opzioni di configurazione del microcontrollore.
// Per conoscerne il significato consulatre il datasheet del PIC18F47J53
// alla sezione "SPECIAL FEATURES OF THE CPU" che fa riferimento ai
// registri di configurazione.
// Configurazione del tipo di oscillatore
// Oscillatore HS, PLL abilitato e HSPLL utilizzato dalla USB
#pragma config OSC = HSPLL
// Divisiore del PLL.
// Divide per 3 (Quarzo da 12 MHz)
#pragma config PLLDIV = 3
// Postscaler per il clock della CPU.
// Alla CPU viene mandato il clock senza divisioni
#pragma config CPUDIV = OSC1
// RESET in caso di stack overflow/underflow abilitato.
#pragma config STVREN = ON
// Watchdog disabilitato al RESET- Sarà poi possibile abilitarlo
// all' interno del programma tramite il bit SWDTEN
#pragma config WDTEN = OFF
// Divisore per il clock fornito al watchdog
// Clock di sistema diviso per 32768
#pragma config WDTPS = 32768
// Set di istruzioni esteso disabilitato
#pragma config XINST = OFF
// Protezione della memoria di programma.
// La memoria di programma non è protetta.
#pragma config CP0 = OFF
// Fail-Safe Clock Monitor disabilitato
#pragma config FCMEN = OFF
// Partenza a doppia velocità disabilitata
#pragma config IESO = OFF
// Clock per il Deep Sleep Watchdog Timer.
// Viene fornito il clock INTOSC/INTRC
#pragma config DSWDTOSC = INTOSCREF
// Clock per il Real Time Clock Calendar
// Il clock proviene dall' oscillatore del Timer 1
#pragma config RTCOSC = T1OSCREF
// BOR nello stato di Deep Sleep disabilitato
#pragma config DSBOREN = OFF
// Deep Sleep watchdog disabilitato
#pragma config DSWDTEN = OFF
// Deep Sleep watchdog postscaler impostato a 8192 (8,5 secondi)
#pragma config DSWDTPS = 8192
// Il bit di sicurezza IOL1WAY può essere attivato e disattivato
#pragma config IOL1WAY = OFF
// MSSP address masking a 7 bit (indirizzi I2C in funzionamento slave)
#pragma config MSSP7B_EN = MSK7
// Protizione delle pagine della FLASH abilitata
#pragma config WPDIS = OFF //WPFP[5:0], WPEND, and WPCFG bits ignored
// La protezione va dalla pagina 0 alla 1 per proteggere il bootloader
#pragma config WPFP = PAGE_1 //Write Protect Program Flash Page 0
#pragma config WPEND = PAGE_0 //Start protection at page 0
#pragma config WPCFG = OFF //Write/Erase last page protect Disabled
// Define che indica che verrà utilizzato il bootloader. Il PIERIN utilizza
// il bootloader quindi non è da modificiare
#define USE_HID_BOOTLOADER
// Definizione della frequenza di clock del sistema
#define CLOCK_FREQ 48000000
#define GetSystemClock() CLOCK_FREQ
In pratica inserendo quella riga "#define USE_HID_BOOTLOADER" avverto il compilatore che uso il bootloader e quindi mi rimappa i vettori di interrupt, giusto?

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)






