ich möchte einen analogen Analogen wert messen, das klappt auch soweit,
aber wenn ich zur steigerung der Genauigkeit die obere Referenzspannung
herrabstzen will (ca. 4V an Vref Pin) zeigt er mir immer maximalwert des
adc (1023) an obwohl die eingangsspannung nicht die referenzspannung
übersteigen kann. hier mal zur konfiguration des AD-Wandlers:
1 | //--------------------------------------------------------------------------------
|
2 |
|
3 | char ad_ini() // wird nach setup aufgerufen
|
4 | {
|
5 | ANSEL = 0b00000000; // s. 63
|
6 | ANSELH = 0b00001100; // AN10 & AN11 ein s. 63
|
7 | ADCON0 = 0b11101101; // Right shift & Vref = pin & AN11 & ADON s. 115
|
8 | ADCON1 = 0b01010000; // Fosc/16 s. 116 & s. 111
|
9 | return 0;
|
10 | }
|
11 | //--------------------------------------------------------------------------------
|
12 |
|
13 | char setup ()
|
14 | {
|
15 | PCON = 0;
|
16 | OSCCON = 0b11100000; // 8MHz s. 50
|
17 | PORTA = 0;
|
18 | PORTB = 0;
|
19 | PORTC = 0;
|
20 | ANSEL = 0b00000000; // s. 63
|
21 | ANSELH = 0b00000000; // s. 63
|
22 | TRISA = 0b00000000;
|
23 | TRISB = 0b00110000; // RB4 & RB5 input
|
24 | TRISC = 0b00000000;
|
25 | return 0;
|
26 | }
|
habe ich irgentwas falsch eingestelt oder muss ich noch irgentwas
einstellen
vielen dank schonmal im vorraus
mfg
Thomas