Nefungující AD převod a pokles napětí na senzoru

Čau všichni, snažim se aby mi pic18F4525 převedl napětí ze senzoru a zobrazil na lcd,ale nejede mi to. A dost zvláštní je, že když připojim na senzor napájení, je na něm cca 1,6 V a kdyz ho připojim na mcu tak klesne na 0,3V - jde o seznor zrychleni a naklonu, takze by pro vodorovnou polohu ve ktere je ty hodnoty meli byt tech cca 1,65 V.

taky je kod:

        g1=0;
g2=0;
ADCON0bits.ADON=1;
_asm	NOP	_endasm
_asm	NOP	_endasm
ADCON0bits.GO=1;
ADCON0bits.CHS0=0;

while(ADCON0bits.GO!=0);
osaX=(ADRESH*256) + ADRESL;

ADCON0bits.ADON=1;
_asm	NOP	_endasm
_asm	NOP	_endasm
ADCON0bits.GO=1;
ADCON0bits.CHS0=1;

while(ADCON0bits.GO!=0);
osaY=(ADRESH*256) + ADRESL;
PutMessage((rom char*)"\x16\x0\x8 X:");
PutMessage(osaX);
PutMessage((rom char*)"\x16\x0\x24 Y:");
PutMessage(osaY);

}

a jeste v pred tim v main.c nastavim tohle

        ADCON0=0x00;
ADCON1=0x0D;
ADCON2=0x95;	

jenom nevim jestli to zobrazeni hodnoty na lcd mam dobre

trošku zmatené i na c - včem jsi to psal v hi,mpl,ccs ?
obecně pravidla jsou pořád stejná smazat porta - nastavit trisa na vstup -
zvolit vzorkování ,zarovnání , reference ,-spustit modul převodníku - vybrat kanál a spustit převod - po skončení konverze načíst data !

ty volíš kanál po spuštění konverze to se nemá !
možná ještě něco ale ten kod nebude celý asi - ta inicializace ?

časuješ pauzu pře nop ? v c existuje delay ! nakoukni do manuálu tvýho překladače c

PS: omluvte pravopis dík

Tak sem se na to mrknul a poupravil. Psal sem to v mplabu. Asi to bylo i v tom ze sem vybral kanal po spusteni konverze, ale hlavni problem byl, ze sem blbej :slight_smile: (opet chyba mezi zidli a klavesnici) a nastavil jsem jako vstupy jiny porty nez ve skutecnosti byly. musim byt priste pozornejsi. a diky za radu