mit den 3 Auftägen häte ich mir das so gedacht
1. Du gehst auf die index.php und verlangst Kerkos
2. Du wirst nach bestellung.php weitergeleitet. Die bestellung.php sieht in der MySQL-Datenbank nach in welcher Schachtel (z.B. 58 die Elkos liegen (und evtl. wie viele)
3. Die bestellung.php schreibt die Anfrage in die Datenbank und fragt ob ich noch mehr bestellen will.
4. Ich drüke auf nein und dan senden besteöllung.php den ersten auftrag an den AVR
5. Wennn der Server die anfrage der "wait.php" bekommt, schaut er (z.B. via cat /dev/ttyUSB0) ob er schon ein "58DONE" oder so gekriegt hat. Falls nicht -> Browser bekommt wieder wait.php das wird solage wiederholt bis alles schachtel geholt sind.
6. Ist der AVR fertig, so sendet er "58DONE" via UART an den Server
7. Bei der nächsten Anfrage der wait.php wird mit cat geprüft ob "58DONE" in Buffer für die serielle Schnittstelle steht
8. Wenns drinsteht: Browser wird auf eine done.php geschickt, auf der z.B. steht "Schachtel Nummer 58 mit 21 (<- Datenbank) Kerkos bereit" oder so
9. Jetz gehst du zum Lager und nimmst dir 3 Kerkos aus der Schachtel
10. Dann gibst du auf einem Tastenfeld (das an den AVR angeschlossen ist) 18 ein, um mitzuteilen, dass noch 18 Stk. in der Schachtel sind.
11. Dann sendet der AVR z.B. "58:18STK" an der Server
12. Auf der done.php drückst du auf "OK"
13. OK = Link auf "einlagern.php" -> Server liest per cat die serielle Schnittstelle ein, bekommt "58:18STK" aus dem Buffer. Er aktualisiert jetzt in der Datenbank und verlinkt dich auf einlagern_wait.php und sendet mit cat "BACK58" an den AVR. Daraufhin beginnt der AVR mit einlagern
14. Die einlagern_wait.php reloadet sich auch alle 5 Sekunden, dann wird jedes mal geprüft, ob ein "58DONE" im Buffer steht. Wenn nicht -> Wieder nach einlagern_wait.php
15. Ist der AVR fertig, sendet er "58DONE" über die serielle Schnittstelle
16. Bei der nächsten Anfrage der einlagern_wait.php liest die php-Seite "58DONE" mit cat aus dem Buffer der seriellen Schnittstelle, ist zufrieden und schickt dich wieder auf die index.php
jetzt kommt nur noch dazu ich wollte die Schachtel aber auch entnehmen können und später wieder hinein geben da ich nicht immer weiß wie viele Teile ich genau brauche.
Lesezeichen