Forum: Mikrocontroller und Digitale Elektronik Problem - wie lösen ?


von Christian (Gast)


Lesenswert?

Hallo,

wie kann man folgendes Problem (programmiertechnisch) lösen : habe 10 
Eingänge und bei einer bestimmten Reihenfolge, wenn die Eingänge auf Low 
gehen, soll ein Ausgang geschaltet werden. Also z.B. wenn jetzt Eingang 
4, dann Eingang 6, dann Eingang 2 ... (jeweils genau 70ms lang) Low ist, 
dann soll der Ausgang geschaltet werden. Ganz wichtig ist aber auch noch 
die Reihenfolge. Ich verwende einen AT90S4433, aber das ist ja 
eigentlich egal. Wäre sehr dankbar für einen Programmieransatz ! Stehe 
da irgendwie aufm Schlauch !

Gruß

Christian

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Klassischer Fall für eine state machine.

loop
   switch(state)

      case 0:
         wenn eingang 4
            state=1
         else
            state=0

      case 1:
         wenn eingang 6
            state=2
         else
            state=0

      case 2:
         wenn eingang 2
            schalte ausgang
            state=0
         else
            state=0

von Christian (Gast)


Lesenswert?

Ich meinte eigentlich Assambler ! Aber so müßte es funktionieren. Muß 
ich mal probieren

Danke schon mal

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.