- Labornetzteil AliExpress         
Ergebnis 1 bis 8 von 8

Thema: ATXmega128A1 Rev. H unerklärliches ADC-Phänomen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Musst du mal ausprobieren wie viel du brauchst. Ansonsten musst du auf einen externen ADC umsteigen da diese glaube ich schneller sind als die internen (hängt ja zum Teil auch mit dem Verfahren zusammen wie die messen).
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    14.09.2012
    Beiträge
    15
    Interessant finde ich nur, dass wenn ich ausschließlich die ADC in der Main laufen lasse und nur diese beiden Werte ausgebe, dass das wunderbar funktioniert.

    Naja ich glaube ich werde um einen neuen Aufbau meines Codes nicht drumherum kommen und vielleicht behebt sich das Problem dann damit.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    14.09.2012
    Beiträge
    15
    sooooo,

    nach diversen Terminen habe ich endlich die Zeit gefunden eine Lösung für die unkonstanten Werte zu finden. Ergibt sich aus den Errata aus den Manuals ...
    Siehe in Kapitel 35: Errata unter Punkt 8

    "8. Accuracy lost on first three samples after switching input to ADC gain stage
    Due to memory effect in the ADC gain stage, the first three samples after changing input
    channel must be disregarded to achieve 12-bit accuracy.
    Problem fix/Workaround
    Run three ADC conversions and discard these results after changing input channels to ADC
    gain stage."

    also einfach sowas wie:
    Code:
    for(int i = 0; i <= 2; i++){
    	get_adcb(&(ADCA.CH0),3);
    	delay_us(10);
    }
    value = get_adcb(&(ADCA.CH0),3);
    für jede AD-Wandlung einbauen (vorausgesetzt man verwendet mehr als einen Kanal).

    Ein Problem, was ich aber immer noch nicht gelöst habe ist die Kalibrierung der ADC. Ich habe leider immer noch ein Offset von im Schnitt 50-75 Inkrementen die eine genaue Bestimmung der Werte vermiesen und eine Ungenauigkeit von ca 11% hineinbringen. Also wenn da jemand ne gute Idee hat ... immer her damit

Ähnliche Themen

  1. Mikrocontroller ATXmega128A1 Programmier-Problem
    Von Drazhoath im Forum AVR Hardwarethemen
    Antworten: 6
    Letzter Beitrag: 08.05.2012, 17:48
  2. Cortex M3 unerklärliches Interrupt Verhalten
    Von Siro im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 8
    Letzter Beitrag: 18.01.2012, 16:20
  3. ET TFT240320TP-3.2 Rev. B kaputt?
    Von flooh im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 02.04.2010, 15:35
  4. BASCOM und ATxmega128A1
    Von Hellmut im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 07.10.2008, 10:31
  5. Heron Robot Project - Rev. 1.02
    Von bart im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 25
    Letzter Beitrag: 15.03.2008, 23:06

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress