Forum: Mikrocontroller und Digitale Elektronik Atmega32:Timer nur einmal duchlaufen lassen?


von Harald (Gast)


Lesenswert?

Hallo,

folgends Problem: Mein Atmega soll eine zeitgesteurte Sequenz genau 
einmal ausgeben. Realisieren müchte ich das mit Timer 1 im Fast-PWM-Mode 
über die zugeordneten Compare-Ausgaänge (Es soll alternativ möglich 
sein, die Sequenz endlos laufen zu lassen). Dieser Einzelduchlauf der 
Sequenz muß abhängig von einem extrenen Triggersignal mit einer möglchst 
kleinen Vertögerung gestartet werden.
Nun scheint es aber problematisch zu sein, den Timer nur einmal 
durchlaufen zu lassen. Zumindest findet beim ersten Durchlauf kein 
Compare Match statt; die Portpins werden nicht geschaltet. Wie würdet 
ihr das lösen?

Gruß,
Harald

von Mätte T. (maette)


Lesenswert?

was willst du denn damit machen?
Timer laufen lassen, bei Interrupt TCNT1 auf 0 stellen, dann nächster 
Overflow bzw. Output Compare verwenden.

von Harald (Gast)


Lesenswert?

Also,

dir Aufgabenstellung ist folgende:

Es sollen drei angeschlossene Geräte geschaltet werden, und zwar mit 
eine sehr präzisen Timing. 1. Gerät -> 1.Compare Match, 2.Gerät -> 2. 
Compare Match, 3.Gerät -> Timerüberlauf.

Es soll zwei Betriebsmodi geben:

- Die Sequenz soll periodisch mit einer bestimmten Frequenz laufen.
- Die Sequenz soll nach Empfang eines Steuerimpulses innerhalb einer 
genau
  definierten Zeitspanne starten.

Gruß,
Harald

von Peter D. (peda)


Lesenswert?

Harald wrote:
> Es sollen drei angeschlossene Geräte geschaltet werden,

Ein, aus, toggle oder wie?

> und zwar mit
> eine sehr präzisen Timing.

Gehts vielleicht auch etwas präziser?

Also max wieviel µs?

Techniker wollen immer exakte Zahlen und keine schwammigen Angaben.


Peter

von Harald (Gast)


Lesenswert?

Hallo

>> Es sollen drei angeschlossene Geräte geschaltet werden,

>Ein, aus, toggle oder wie?

Zwei der Gerät reagieren nur auf die Flanke (Ein Laser und eine 
Zündschlatung), ein weiteres, ein Ventil wird geöffnet und geschlossen.

> und zwar mit
> eine sehr präzisen Timing.

Also max wieviel µs?

+/- 10us

Gruß,
Harald

von Harald (Gast)


Lesenswert?

Noch eine Anmerkung dazu:

Das Ventil soll am Anfang der Sequenz geöffnet werden, also bei meinem 
Lösungsansatz glaichzeitig mit dem Timer, und soll dann mit dem 
Timerüberlauf wieder schließen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.