Nacheinanderschalten von Ports

Gast #338739
Lesenswert?
• ▲
▼
Hallo,
ich habe einen Reseteingang. Wenn ich diesen Betätige soll eine
Reihenfolge von Ausgängen im 1 Sekundentakt angesteuert werden. Welche
Lösungen schlagt ihr vor?
1. Sehr primitiv mittels delay die gewünschten Ports freischalten?
2. Mittels Timer die Werte aufrufen?
3. eine andere schöne Lösung.
Die Reihenfolge der Ausgangsport ist immer gleich.
#338740
Lesenswert?
• ▲
▼
Hallo Sebi,

falls der Prozessor keine anderen Aufgaben hat,
reicht wohl eine Lösung mit Delay.
Dann müsste man
-  das Delay als Subroutine anlegen
1. Die Ports initialisieren
2. In einer Endlosschleife
   -ersten Ausgang setzen
   -Delay aurufen
   -ersten Ausgang zurücksetzen
   -zweiten Ausgang setzen
   - Delay aufrufen
   ...
  - letzen Ausgang setzen
  - Delay aufrufen
  - letzten Ausgang zurücksetzen
3. zum Anfang der Schleife springen.

Eleganter ist eine Lösung mit Timer und Interrupt.
Dazu einen Timer laden (wenn es Taktfrequenz und
Vorteiler zulassen mit einem Wert für eine Sekunde.
(t=Taktperiode Timereingang  Vorteiler  Ladewert)

Bei jedem Interrupt den Nächsten Ausgang ansteuern
und den Timer nachladen.
Hat der Timer eine kürzere max.Periode,(z.B 0,2sec) einfach
im Interrupt eine Variable hochzählen,
Im Hauptprogramm den nächsten Ausgang ansteuern,
wenn diese Variable einen bestimmten Wert erreicht(z.B.5)hat
und diese Variable löschen.

Gruss
Digger

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.