- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 36

Thema: Timer und Register

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Danke für eure netten Antworten.

    Ich möchte mit dem Timer nach zwei Gewissen Verzögerungen einen Ausgang Toggeln. Nachdem Wechsel von High auf Low muss die Laufzeit meines Signales gemessen werden. Diese liegt je nach Länge bei 0,5us-2000us. Die Verzögerung sollte sein 100us und etwa zwischen 100ms und 300ms.

    Ich brauche eine Möglichst gute Auflösung, da habe ich mir selbst keine Vorgabe gesetzt, sie sollte aber als Richtung zwischen 50ns und 1us liegen. Diese Zeitspektren liegen im Bereich des Timer 0 und Timer 2. Als Test AVR dient der 328P, weil er auf den Arduino passt :P. Ist halt der, der auf Vorrat liegt.

    Danke für die Beispiele mit dem RAMEND, genau euer Angesprochenes ist das Problem. Es sind fest zu geordnete Speicheradressen. Ich möchte aber gerne zwei Register von r16-r32 nutzen. Wobei die Pointer Register ja wegfallen.

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Für die genaue Messung einer Zeit hat Timer1 die ICP Funktion - damit sind dann auch 50 ns Auflösung drin (bei 20 MHz Takt). Eine Erklärung dazu gibt es im Wiki-Bereich unter Timer(AVR). Den Zeitkritischen Teil übernimmt dabei die Hardware, und man kommt mit C oder auch BASIC aus.

    Der Mega328 hat einen 16 Bit timer - den kann man auch ruhig nutzen (es gibt kein Geld zurück dafür das man die HW nicht nutzt).

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von avr_racer
    Registriert seit
    01.04.2014
    Ort
    MecklenburgVorpommern
    Beiträge
    175
    > Ich möchte mit dem Timer nach zwei Gewissen Verzögerungen einen Ausgang Toggeln

    Den Ausgang kannst du mit Timern direkt togglen entweder im CTC-Modus der immer ein schönes Rechtecksignal _--_--_-- erzeugt oder im (Fast)PWM-Modus der dir dann gleich noch ein geändertes Tastverhältniss liefern kann _------- invers gehts auch -------_

    > Nachdem Wechsel von High auf Low muss die Laufzeit meines Signales gemessen werden.

    Das Signal über den INTx anlegen, INTx-ISR auslösen lassen in der dann der Timer gestartet wird und wenn man zusätzlich einen Wert in das entsprechende OCRx-Register schreibt kann man den Timer einen OCx-Int auslösen lassen weil die Zeit erreicht ist. Das ganze kann auch mit der ICP des Timers eledigt werden.

    Aber was soll das werden irgendwas mit Ultraschall? Zum Verständniss um sich ein Bild des ganzen zu machen vielleicht kommt man denn auch noch auf viel simplere Ideen
    Geändert von avr_racer (28.04.2014 um 18:45 Uhr)

Ähnliche Themen

  1. gleiche register bei atmega32 und 16
    Von avrrobot im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 20.02.2011, 09:19
  2. Timer-Register mögen Befüllung durch Funktion nicht
    Von stefan_Z im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 06.08.2007, 18:25
  3. Asuro und OSCCAL Register Taktfrequenz
    Von Winne im Forum Asuro
    Antworten: 3
    Letzter Beitrag: 11.09.2005, 08:49
  4. Interne Register und Register in SRAM
    Von FoCus im Forum AVR Hardwarethemen
    Antworten: 9
    Letzter Beitrag: 27.07.2005, 12:06
  5. ADC und USART über Register?!
    Von BASTIUniversal im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 29.04.2005, 13:28

Berechtigungen

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

Solar Speicher und Akkus Tests