PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATMEGA32 ADC setzen



ts230
17.01.2009, 06:05
Hallo
ich hab mal wieder 'ne Frage.
Ich hab ein kleines Projekt bei dem ich den ADC setzen muss.
Das heißt ich bräuchte irgendwas um den ADC auf ein bestimmten Wert zu setzen.
Ich hoffe,ihr könnt mir helfen.

McJenso
17.01.2009, 11:13
Hallo,

der ADC ist ein Eingang. Den kannst du nicht vom Controller aus setzen. Wenn es um die Grundsätzliche Funktion des ADC geht, schau kurz im Wissenbereich (https://www.roboternetz.de/wissen/index.php/ADC_%28Avr%29) nach.
Sonst beschreibe dein Problem bitte etwas genauer. Was hast du vor? Z.B, was möchtest du an den ADC anschließen?

Gruß

Jens

ts230
17.01.2009, 16:47
Was ich anschließen will:
Ich möchte ein Licht in der Helligkeit einstellen.
PWN geht nicht weil ich die Pins schon benutzt habe.
Kann ich den Wert nicht irgendwie in die Register schreiben?

sternst
17.01.2009, 17:12
Ich möchte ein Licht in der Helligkeit einstellen.
PWN geht nicht weil ich die Pins schon benutzt habe.
Kann ich den Wert nicht irgendwie in die Register schreiben?
Nein, denn es ist ein ADC (Analog-Digital-Converter) und kein DAC (Digital-Analog-Converter).

MSN
17.01.2009, 17:15
was du willst is ein DAC und kein ADC! PWM kannst du auch per software machen.

ts230
17.01.2009, 17:16
Hab ich nicht dran gedacht.
Wie könnte ich es Dann lösen?

was du willst is ein DAC und kein ADC! PWM kannst du auch per software machen.
Wie mache ich dass PWM in der Software?
Timer0 und Timer2 sind schon belegt.

MSN
17.01.2009, 17:18
naja halt indem du dir nen DAC besorgst (gibts mit versch. schnittstellen) oder eben software PWM nutzt.

ts230
17.01.2009, 17:25
naja halt indem du dir nen DAC besorgst (gibts mit versch. schnittstellen) oder eben software PWM nutzt.
Software PWM nutzt doch die Pins am PORTD?
Kann ich das auch an PORTA.1 und PORTA.2 ausgeben?
Ja
Was würdet ihr mir als Zeitbasis empfehlen?
Ich hab Timer2 jetzt doch noch frei und der Hat den Prescaler 1024 bei einer Frequenz von 16MHz.Eigentlich sollte der im 500ms Takt was machen,den gebrauchten Prescaler gabs aber nicht.Also hab ichs mit ner Variable gemacht.