Gast
#31911
Hallo, ich möchte mit meinem TINY26 schwankungen auf einer 12Vleitng messen, dh ich muss einen bereich von 11V-13,2V erfassenkönne, da habe ich einen spannungsteiler mit 10K und 1,8K genommeen und die mitte auf den AD des µController gepackt. Ich verwende die interne 2,56V referenz spannung,.. nun habe ich aber ein kleines problem, die pannung sprigt wesentlich mehr als die im datenblatt angegebnen 3mV also 1,5LSB. der Code ist folgender: Init_ADC: ;ADC = Enable, ADC-IRQ= Enable, ADC Prescaler = 32 ldi temp0, (1<<ADEN)|(0<<ADSC)|(0<<ADFR)|(1<<ADIE)|(0<<ADPS2)|(0<<ADPS1)|(0<<ADPS0) out ADCSR, temp0 ;interne 2,56V referenz und ein C an PA3=AREF, Channel0 ist selektiert mit Mux0-4 ldi temp0, (1<<REFS1)|(1<<REFS0)|(0<<ADLAR)|(0<<MUX4)|(0<<MUX3)|(0<<MUX2)|(0<<MUX1) |(0<<MUX0) out ADMUX,temp0 sei ;// Global IRQ Enable ;startet eine singel ADC Conversion und gibt sie in Strom_L,Strom_H aus ADC_Conversion: sbi ADCSR,ADSC ;setze bit Start ADC Conversion, ADC startet ADC_Conversion_1: sbic ADCSR,ADSC rjmp ADC_Conversion_1 in Return_L, ADCL in Return_H, ADCH ret ist etwa in der SW ein fehler oder ist die intern referenz nicht brauchbar,.. ich brauch keine super genauen messerte, aber mit 20mV Auflösung sollte dass dann schon passen.