-
        

Ergebnis 1 bis 4 von 4

Thema: 16-Bit-Timer: Alle 20ms ein Interrupt

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    09.05.2004
    Ort
    Bielefeld / Paderborn
    Beiträge
    1.253

    16-Bit-Timer: Alle 20ms ein Interrupt

    Anzeige

    Tagchen!

    Wie bring ich nen 16-Bit-Timer dazu, nur alle 20 Millisekunden eine ISR aufzurufen? Ohne eine Schleife zu schreiben, die hochzählt oder sowas. Ich will ein Software-PWM mit geringer Periodendauer schreiben, um damit Magnetventile zu steuern. Gleichzeitig sollen die 4 PWM-Werte per RS232 eingelesen werden, weswegen ich mir die aktive Zählschleife nicht erlauben kann. Also, gibts ne Möglichkeit, den Timer soweit zu verlangsamen? Wenn das RS232 nicht wäre könnte man ja evtl an der Taktfrequenz rumpfuschen, also bei 1MHz-Quarz 100 MHz angeben oder so.
    Eine Art Postscaler wäre eine Lösung, aber gibts das beim AVR? (AtMega

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Weiß jetzt nicht ? Bei 16 MHZ (geraten) hast du mit Prescale 8 und preload 25536 genau alle 20 mS einen Schnackler ?

    Irgendwo steh ich auf'm Schlauch
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Administrator Robotik Einstein Avatar von Frank
    Registriert seit
    30.10.2003
    Beiträge
    4.990
    Blog-Einträge
    1
    Am einfachsten:
    Hiermit passenden Timer-Code generieren lassen:

    http://www.roboternetz.de/phpBB2/dlo...le&file_id=169

    Notfalls halt noch Zähler in die Timerroutine rein, wenn du nix passendes findest

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.07.2005
    Beiträge
    569
    Hmm, mal grob überschlagen:

    16 Bit macht einen Zählbereich von 0 - 65535

    also ohne Prescaler: 65536 Takte
    mit einem Prescaler vom 1024: 67108864 Takte

    Fazit: es ist problemlos möglich (selbst bei 16 MHz).

    Grüße,

    da Hanni.

Berechtigungen

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