Hallo! Als Referenzspannung habe ich VCC genommen. Bei anlegen der VCC sehe ich per Uart die 1023 manchmal auch nur 1022, das ist ok... Man sieht hier, das es sich um einen 10Bit-ADC handelt. Aber wenn ich nun 0V anlege, dann misst der verschiedene Werte, ca von 180 bis 220 bei mit sind das dann ca 651mV Das oszilloskop sagt aber dass maximal 80mv anliegen. komische sache.. Was ich ausprobiert habe: GND an den ADC-PIN keine Veränderung! so war ja sichergestellt, dass die Potentiale der Spannungsmessung definitiv gleich sind. Kann die SW schuld sein? MSP430F2274
Gast
#1332355
Wahrscheinlich ist der ADC Takt zu hoch oder die Sample & Hold Wartezeit zu kurz (falls sich bei den Controller sowas einstellen lässt). Ähnliches Problem hatte ich mal mit nem PIC18, da waren die zeiten auch zu knapp.
Gast
#1332782
Das Problem liegt meist in der falschen ADC Taktfrequenz, das Problem hatte ich auch mal. schau mal hier: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#ADC_.28Analog_Digital_Converter.29 ich hab dir das wichtigste rauskopiert! ADPS2...ADPS0 (ADC Prescaler Select Bits) Diese Bits bestimmen den Teilungsfaktor zwischen der Taktfrequenz und dem Eingangstakt des ADC. Der ADC benötigt einen eigenen Takt, welchen er sich selber aus der CPU-Taktfreqenz erzeugt. Der ADC-Takt sollte zwischen 50 und 200kHz sein. Der Vorteiler muss also so eingestellt werden, dass die CPU-Taktfrequenz dividiert durch den Teilungsfaktor einen Wert zwischen 50-200kHz ergibt. Bei einer CPU-Taktfrequenz von 4MHz beispielsweise rechnen wir \begin{matrix} TF_{min}=\frac{CLK}{200\,\mathrm{kHz}}=\frac{4000000}200000}=\mathbf{20} \\ \\ TF_{max}=\frac{CLK}{50\,\mathrm{kHz}}=\frac{4000000}{50000}=\mathbf{80} \end{matrix} Gruß Stefan
also ich habe meinen ADC wie folgt initialisiert: ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE; // VCC als ADC-Ref und: - ADCOSC als Input - Single-channel-single-conversion - nur channel A0 - ADC10 clock divider = 8 immernoch keine deutliche besserung. Ich erhalte anstatt 0 für 0V ca 180 bei 10Bit...
Gast
#1333716
Hi Um welchen Controller handelt es sich denn? Und sind alle Anschlüsse, also auch AVCC und AGND richtig verschaltet? MfG Spess
Gast
#1333728
Da keine Taktfrequenz angegeben ist nehme ich mal 20 MHz an. bei einem Teiler von 8 wären das dann 2,5MHz Takt an den ADC. -> Datenblatt beschreibt wie schnell man sein darf.
Controller ist immernoch der : MSP430F2274 Außerdem lasse ich nicht meine 4MHz vom Quarz auf den ADC wirken, sondern ADCOSC als Input. DIESER wird dann via prescaler geteilt. Langsamer geht also nicht. Ich habe vieles ausprobiert. U.a. verschiedene Clocks gewählt. Bitte um weitere Beteiligung
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.