hi habe volgendes Problem, Wenn ich die zweite Ampel2_gruen Alias Portb.4 Ampel2_gelb Alias Portb.5 Ampel2_rot Alias Portb.6 Reinschreibe dann geht die andere ampel bei gelb aus. Bitte um Hilfe.Vielen Dank chris
Ich verstehe Dein Problem nicht. Kannst Du das ein wenig deutlicher beschreiben? Ich gehe davon aus, dass Du weisst wie sich diese Aufgabenstellung anhört...
Du hast glaube ich einen Denkfehler im Programm. Es ist verkehrstechnisch unklug, zuerst einen kompletten Zyklus von Ampel1 zu programmieren, bevor die Ampel2 das erste Mal angesprochen wird. In dieser Zeit hängen schon die ersten Autos aufeinander ;-) Es hilft zuerst eine Tabelle zu machen, in der der Zeiten und Zustände der Ampellichter notiert sind Zeit A B C D E F G H A wiederholen Ampel1-rot 0 1 1 1 1 1 1 1 Ampel1-gelb 0 1 0 0 0 0 0 1 Ampel1-grün 1 0 0 0 0 0 0 0 Ampel2-rot 1 1 1 0 0 1 1 1 Ampel2-gelb 0 0 0 1 0 1 0 0 Ampel2-grün 0 0 0 0 1 0 0 0 Die einzelnen Phasen A,B,C... kann man dann den gewünschten Warte-/Fahrzeiten anpassen. Ich würde aus obigem Grund auch in jedem Zustand immer alle Ampellampen setzen/löschen. Bei einem fortgeschrittenen Programm bietet sich sogar eine Schleife an, bei der die Steuerzeiten und die Zustände eines kompletten Ports aus zwei Data Statements gelesen werden. Bei einem noch fortgeschritteneren Programm würde man den Zeitgeber nicht durch wait Statements zwischen den Zuständen A,B,... programmieren, sondern einen Timerinterrupt als Zeitscheibenantrieb benutzen. Dann kann das Programm in den "Wartezeiten" noch andere Sachen machen z.B. Anzahl der Autos zählen oder MP3s für die Fussgänger abspielen ;-)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.