- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 11

Thema: Problem der ADC Wandlung bei AtMega16

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    in deiner Schleife rufst du zwar adc_read auf, aber du weist das Ergenis deiner Variablen adc_wert nicht zu, der Wert wird nur VOR der Schleife einmal belegt und bleibt dann unberührt! Da du außerdem beim ersten adc_read die interrupts noch abgeschaltet hast, wird vermutlich auch kein Messergebnis entstehen, was die 0 erklären würde!

    wofür zum Geier brauchst du das "overflowzahl" ? Der dürfte dir theoretisch niemals antworten! Da du die Bedingung if (overflowzahl==1) nie erfüllen kannst!!!

    Außerdem kannst du dir das lesen des ADC-Wertes in deiner Init sparen!!! Der wert wird nur DANN nicht aktualisiert, wenn du das High- ohne das Lowbyte liest! Also erst ADCH dann ADCL und nicht andersrum! Wenn du garnichts liest intressiert das nicht, nur durch das lesen des Highbytes wird das Lowbyte gesperrt und das Lowbyte durch lesen desselbigen wieder freigegeben!

    Das ADCSRA |=(1<<ADEN); im adc_read ist auch überflüssig, wenn der ADC einmal an ist, geht er nicht wieder aus bis du das Flag explizit löschst.
    und dein Kanalwählen ist so auch nciht richtig: ADMUX = (ADMUX & 0b11000000) | (channel & 0b00111111);
    denn Bit 7 und 6 bestimmen deine Analog-Referenz und dürfen nicht durch die Kanalwahl verändert werden!!!! Deswegen erst die Bits 0 bis 5 löschen und dann die channel Variable maskieren und abschließend ver-oder-n
    Geändert von Ceos (26.09.2011 um 09:39 Uhr)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

Ähnliche Themen

  1. AD-Wandlung Freilaufend mit ATMega16 - seltsame ergebnisse
    Von DuRo im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 02.06.2007, 21:58
  2. ADC Wandlung mit Atmega16
    Von C1122345 im Forum Assembler-Programmierung
    Antworten: 1
    Letzter Beitrag: 18.04.2007, 18:52
  3. Problem bei RGB zu HSV-Wandlung
    Von troede im Forum Software, Algorithmen und KI
    Antworten: 12
    Letzter Beitrag: 24.09.2006, 10:47
  4. ADC-Wandlung mit ATMEGA16. Weiterarbeiten mit 10Bit und ASM
    Von moonwalker99 im Forum AVR Hardwarethemen
    Antworten: 10
    Letzter Beitrag: 23.03.2006, 11:03
  5. Problem D/A Wandlung mit MEGA16
    Von farmerjo im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 18.12.2005, 22:16

Berechtigungen

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

12V Akku bauen