Forum: Mikrocontroller und Digitale Elektronik Counter mit einem Puffer


von Thomas S. (ths1201)


Lesenswert?

Hallo Newsgroup,

ich hätte mal eine Frage zur Programmierung eines Mega8.

Ich muss folgendes Realisieren:

Der Controller hört auf einen Impuls an einem Eingang. Sobald dort ein 
kurzer Impuls ansteht (ca 250 ms), soll der controller die Impulse einer 
Lichtschranke bis zu einem vorgegebenen Wert Zählen (17) und dann für ca 
250 ms ein Relais schalten. Dies würde ich auch so hinbekommen. Nun kann 
es aber sein, dass wärend dieser Zählschleife ein weiterer Impuls am 
Eingang ansteht und sofort nachdem die ersten 17 Counts durchgelaufen 
sind, wieder sofort von neuem bis 17 gezählt werden muss. Im schlimmsten 
Fall könnte es sein, dass 20 Impulse nacheinander am Eingang 
signalisiert werden. Diese müssten quasi in einem Buffer gehalten werden 
um diese nacheinander abzuarbeiten. Wie kann ich so etwas realisieren? 
kann ich den Stack irgendwie dafür verwenden? Die Sache mit dem Buffer 
bringt mich ins Grübeln.

Für einen Hinweis wäre ich Euch sehr Dankbar.

Gruß Thomas

von Marko (Gast)


Lesenswert?

per Interrupt und dann ne variable inkrementieren,
die durch die durchläufe dekrementiert wird.
varaible bei 0 = alle ansehenden jobs erledigt.

von Thomas S. (ths1201)


Lesenswert?

Hmm stimmt, daran habe ich garnicht gedacht. Das müsste ich mal im AVR 
Studio simmulieren.

Ich kenne mich mit dem AVR Studio noch nicht gut aus, wie kann ich denn 
so einen Eingang Interuppt per Tastatur simulieren? gibt es ein Tutorial 
in deutscher sprache?

Vielen Dank

gruß Thomas

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.