Hallo,
ich habe ein Problem beim Auslesen der Kanäle 8-15 mit der Bascom-Funktion Getadc(). Die unteren Channels 0-7(Port F beim Atmega1280) funktioniert einwandfrei. Aber sobald ich Port K (also Channel 8-15) auslese, wird die Referenzspannung 5V ausgegeben obwohl 1,2V an dem entsprechenden Port anliegt (natürlich der Counter ausgegeben).
Hier ist mein Code, zusammengefaßt:
Code:$regfile = "m1280def.dat" Config Portf = &B00000000 Config Portk = &B00000000 Dim Result As Word Dim Channel As Word Config Adc = Single , Prescaler = Auto , Reference = Avcc 'Avcc=5V Start Adc 'Channel 0-7 auslesen funktioniert Result = Getadc(0) '0-7 'Channel 8-15 wird falsch ausgelesen 1023(5V) anstatt 245(1.2V) 'im ADMUX-Registor muss ADLAR gesetzt sein, deswegen entspricht '32=Channel[8] 33=Channel[9] .... 39=Channel[15] Channel = 32 Result = Getadc(channel) 'Bits um 6 verschieben, da bei Channel 8-15 die beiden ADC-Dataregister linksorientiert sind Shift Result , Right , 6 Vielen Dank für die Unterstützung







Zitieren

Lesezeichen