mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Timer0: Frequenz und Amplitude einstellen


Autor: Pepe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
habe einen ATmega644, der mit Timer0 ein Rechtecksignal mit
einer festen Freq. von ca. 50Hz erzeugt. Die Amplitude kann
bisher von 0%..100% eingestellt werden. Verwende den Timer0
im FastPWM-Mode.

Jetzt soll zusätzlich die Frequenz einstellbar sein; im
Bereich von 40Hz..90Hz und das ohne Hardware-Änderung.

Mir fällt nicht wirklich ein, wie ich die Amplitude und
die Frequenz mit Timer0 gleichzeitig einstellen kann.

Vielleicht kann mir hier jemand weiterhelfen.

Danke, Pepe.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pepe schrieb:
> Die Amplitude kann bisher von 0%..100% eingestellt werden.
bist du dir da sicher? Wenn es ein Rechtecksignal ist dann ist die 
Amplitude konstant. Sonst müsstest du ja ein Analogausgang haben.

Autor: jemand (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@peter
das geht wenn man im 50 Hz Rhytmus 2 passende PWM Werte benutzt.

@pepe
Zeig mal deinen jetzigen Code sonst nur Nebelgestochere.

Autor: Pepe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, hab mich nicht klar ausgedrückt:
Amplitude = Einschaltverhältnis.

Am Ausgang hängt ein Magnet, der vibriert.
Ich ändere das Einschaltverhältnis über
einen geänderten Wert in OCR0.
Über das geänderte Einschaltverhältnis ändert
sich die Auslenkung des Magneten -> Amplitude.

( Man sollte doch erst denken und dann schreiben :-) )

Pepe

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Frequenz änderst du, indem du den TOP-Wert des Timers änderst.
Das geht in allen Timer-Modi, bei denen man diesen Wert variieren kann.
Durch das Ändern der oberen Grenze ändert sich aber auch das 
Tastverhältnis, wenn man den Umschaltpunkt nicht auch gleichzeitig 
ändert.

Autor: Pepe (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Nur Timer0 hat nur OCR0 und kein ICR0-Register.
Also kann ich zwat den Umschaltpunkt verändern,
aber doch nicht TOP.
Außer ich durchblicke die ganze Geschichte nicht.
Habe die Waveform-Tabelle gleich mal angehängt.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Also kann ich zwat den Umschaltpunkt verändern,
>aber doch nicht TOP.

Im Mode 2,5,7 ist OCR0A Top und OCR0B dein Comparewert. Also lässt sich 
beides verstellen.

MfG Spess

Autor: Pepe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz ehrlich: Klingt logisch.
Danke für die Hilfe.
Pepe

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.