- Codice: Seleziona tutto
#include <htc.h>
#include "delay.c"
__CONFIG (FCMDIS & IESODIS & BORDIS & UNPROTECT & MCLRDIS & PWRTEN & WDTDIS & INTIO);
#define _XTAL_FREQ 8MHZ
#define LED GPIO2
void main (void) {
//selezione della frequenza dell'oscillatore interno a 8MHz
OSCCON=0b01110000;
//attendo che l'oscillatore si stabilizza
while(!HTS) {}
TRISIO=0b111111011;
GPIO=0;
ADCON0=0;
OPTION=0b10000011; //GPIO pull-ups disabilitate
INTCON=0b00100000; //disabilitato interrupt globale
while(1){
LED^=1;
DelayMs(250);
DelayMs(250);
}//fine while
}//fine main
dovrebbe eseguire all'infinito l'inversione di stato della porta dopo una pausa di circa 500ms ma non so perché la porta resta sempre a livello alto.
Ho controllato con l'oscilloscopio pensando alla routine di ritardo (che peraltro ha sempre funzionato su altri PIC) e in effetti l'uscita è stabile a livello alto.
L'ambiente di sviluppo è MPLAB IDE 8.86 e il programmatore PICkit2, il micro è montato su breadboard al quale è aggiunto solo il led con relativa resistenza limitatrice e alimento per le prove con lo stesso programmatore.
E' la prima volta che programmo questo PIC ho sbagliato forse la configurazione di qualche registro?

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)



.