Gast
#7804
Für Einsteiger
|
Anzeige
|
ADC für Single und Free Run
Gast
#7804
Für Einsteiger
Gast
#7805
hast du nicht irgendwas vergessen?
Gast
#7806
ja, ja, ich dächte sie war dabei
Gast
#7807
Hallo Erwin ! Ich hab mal eine Frage bezüglich Freerunnig und Single Conversion. Mein Problem ist folgendes. Auf einem Kanal lese ich ständig Werte ein (im freerunning Modus). Jetzt will ich aber zwischendurch kurz einen anderen Kanal einmalig einlesen. Muss ich das im Single mode machen ? Weil ich brauch nur einen Wert. Oder soll ich beides im freerunning machen ? Ist der Wechsel zwischen freerunnig und Singleconversion ohne Probleme möglich ? Besten Dank im Vorraus ein Hoch das es dieses Forum gibt ! Tschüssikowski --Frank
Gast
#7808
Hallo, habe lange nicht ins Forum geschaut. Es reicht, wenn Du am Anfang den Freerun Modus einstellst -- es gibt auch einen Hinweis auf meinem AD_Code. Also in folgender Reihenfolge: Vorteiler einstellen -- Siehe Code AD-Wandler einschalten -- set ADEN Free Run oder Single Run auswählen set ADFR für FreeRun Wandlung starten -- set ADSC und nun die Schleife beginnen ADMUX einstellen lesen - auswerten LowByte zuerst ADMUX verändern lesen - auswerten usw. Für Single Wandlung geht es auch so: ADMUX einstellen AD Einschalten set ADSC ADIF prüfen, ob fertig Lesen - Auswertem ADMUX neu Einschalten usw..
Gast
#7809
Hallo. Hab ein kleines Problem. Arbeite zum ersten mal mit dem AVR Atmega8 und möchte über den ADC0 Eingang eine Spannung einlesen und über 7-SegmentAnzeige ausgeben lassen. Spannung kommt am Eingang an und ich denke das der ADC im frei laufenden Betrrieb läuft, aber er spuckt komische Zahlen auf der Anzeige aus. Meine MEinung ist, dass es an der Ergebnisroutine liegt. Wenn wir in meine VAriable "value" einen Wert definieren rechnet er den entsprechenden Wert aus und gitb ihn auch richtig auf der Anzeige aus. Aber wenn er sich die Werte über den Eingang ADC0 holen soll und diese dann in ADCL und ADCH reinschreibt kommt nur Null raus. Kannst du mir vielleicht helfen?
Gast
#7810
Hey, rihhtiger Freak bin ich ja auch nicht, aber wenn nicht mehr Programm arbeitet, als in besser.c, dann wird ja für deinen ADC nie der Interrupt freigegeben?! ACSR (ACIE=Bit3)ist 0 statt 1 ! Damit bleibt dann einer, was es ist. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|