HaMuKiBahner hat geschrieben:Hallo Karl,
...
- Mit dem Terminalprogramm habe ich das Problem, dass ich als erstes den Befehl i19 senden muss bevor ich den Motor korrekt betreiben kann. Dann gehen Halt und Geschwindigkeitswechsel ohne Probleme. Ansonsten kann ich nach einem Geschwindigkeitsbefehl keinen weiteren Befehl mehr eingeben - ich muss dann den hängengebliebenen MC neu Starten.
- Das gleiche Verhalten habe ich jetzt auch mit dem Betrieb mittels Smartphone nur kann ich hier keinen i19-Befehl mehr senden. Es bleibt nur ein Reset. Außerdem vermisse ich eine "Halt" Taste.
Gruß
Andreas
Hallo Andreas, - auch für allle Anderen,
Ich habe für die Kommunikation mit dem Smartphone (NETIO) etwas grundsätzliches ändern müssen:
NETIO verlangt für eine saubere Kommunikation (über TCP), dass der gesendete Befehl vom MC2561 exakt ohne Veränderung erst einmal zurückgesendet wird. Ansonsten ist der soeben gesendet Befehl nicht "abgeschlossen". Dies ist eine Forderung von NETIO - nicht von dem Protokoll TCP!!! Ich habe mit dem Ersteller des Prorammes gesprochen - er möchte das nicht ändern. Eigentlich ist das nicht notwendig, er macht das aber aus bestimmten Gründen, möchte ich an dieser Stelle nicht erklären, es ginge auch anders. Das passt aber nicht zur Logik meines Programmes, die ja bislang einen sehr geschwätzigen Output erzeugt hat - ihr habt das ja im Terminalprogramm gesehen.
Dieser geschwätzige Output (ich nenne das mal vereinfacht den DEBUG Mode ) irritiert NETIO - der Bildschirm friert damit ein - der nächste Befehl wird nicht mehr angenommen, evtl. wird auch die Verbindung abgebrochen (das Hintergrund-BLAU wird milchig)
Da NETIO bis aufweiteres unsere Oberfläche bleiben soll (bis wir auf Michael's Oberfläche wechseln), habe ich mich entschlossen, die Form des Outputs umschaltbar zu machen. (Das Thema habe ich hier
http://www.gartenbahntechnik.de/forum/v ... rt=40#p797 schon einmal angdeutet).
Seit der Programmversion 2561-S1.hex (die ich heute Morgen versendet habe) gelten folgende Veränderungen:
1. Das Programm arbeitet nach seinem Start immer im NETIO- Output Mode, d.h. es wird der empfangene Befehl an NETIO zurückgesendet. Kann man ausprobieren - im Terminalprogramm, über die serielle UART-USB - Verbindung sieht man das.
2. Man kann durch die Versendung von dem Zeichen <*> (1 Byte - ohne die spitzen Klammern) in den altbekannten Debug- Output Modus zurückschalten. Mit erneuter Versendung <*> schaltet man wiedder in den NETIO-Modus zurück. (Nach dem Booten startet aber der MC sofort wieder im voreingestellten NETIO - Ouput Modus)
3. Die Baudrate ist jetzt immer 921.600 (siehe auch hier:
http://www.gartenbahntechnik.de/forum/v ... rt=50#p813 ) - auch im Terminalprogramm, über die serielle Schnittstelle USB-UART1!
(die UART0 - Schnittstelle zum Bootloaden arbeitet aber weiter mit 38.400 Baud)
Dieses gesagt - nun haben wir das kleine Problem, dass wir zwar im NETIO - Modus von der Smartphone Oberfläche steuern können, aber einige Parameter - wie z.B. der i19 Befehl (i immer klein schreiben!!!) können wir aus NETIO nicht eingeben, das geht ja nur im Terminalprogramm. Das ist im jetzigen Programmstadium etwas lästig, andererseits muss man es nur einmal machen, da dieser Wert im nichtflüchtigen EEPROM gespeichert wird .... und nach jedem Booten wieder zur Verfügung steht.
Blöd ist nur, wenn man mit <i19> einen Wert im EEPROM hat - eingegeben im DEBUG Output Modus - noch aus dem Terminalprogramm heraus - über die USB-UART Schnittstelle ....! Oder wenn noch gar kein Wert im EEPROM für i19 enthalten ist - dann funktioniert der Stopp-Befehehl nicht richtig.
Ich werde dieses ändern, indem ich einen zweiten (waagerechten) Slider einrichte, mit dem wir die Abbremshärte des STOP-Befehls einstellen können. Dann ist das Problem behoben.
Der HALT Knopf kommt ebenfalls bei dieser Gelegenheit rein.
Die geänderte Oberfläche sende ich Euch gleich / morgen zu.
Insgesamt werde ich diese Thematik noch ändern - habe da ein paar gute Ideen. Aber das kommt später, momentan wollen wir ja erst einmal die Basics in den Griff bekommen.
LG vom Karl