ich sende einen Sollwert per Java Programm an den Arduino (Uno).
Das funktioniert alles einwandfrei.
Beende ich jedoch das Programm, welches den Wert sendet so unterbicht mein Arduinoprogramm ebenfalls.
Was kann ich dagegen tun, bzw. an was liegt das?
Das liegt vermutlich an deinem Quellcode, der Mikrocontroller wird auf eingehende Daten warten. Zeig den Code, dann erklären wir, wie es besser gemacht wird. Oder wir verweifeln bei der Fehlersuche einfach mit...
Verliert er das Programm auch wenn Du ihn resetierst? (mit Resettaste) Wenn JA ist er nicht zu gebrauchen da für Debuging Du die serielle Schnittstelle brauchst und beim öffenen des Terminals Arduino resettiert wird.
Grüße Uwe
uwefed:
Verliert er das Programm auch wenn Du ihn resetierst? (mit Resettaste) Wenn JA ist er nicht zu gebrauchen da für Debuging Du die serielle Schnittstelle brauchst und beim öffenen des Terminals Arduino resettiert wird.
Grüße Uwe
Hab da was verwechselt;
Wenn Du das Javaprogramm zu machst resetiert sich der Arduino?
Grüße Uwe
FTE11:
...
Nur für mein Versändnis. Wenn ich die Serielle Kommunikation starte/beende werden dann alle variablen auf ihren ursprungswert zurück gesetzt?
Die serielle Komunikation hat keinen Einfluß auf die Abarbeitung des Programms. Aber über die serielle Schnittstelle kann der Arduino resetiert werden. (DTR-Signal)
Bei einem Reset werden die Variablen wieder auf die Startwerte in setup() gesetzt weil das Programm neu abgearbeitet wird.
ja das Java programm resitiert den Arduino.
Habe es nun aber über das Java Programm gelöst, die Verbindung bleibt offen und ich kann über verschiedene Threads lesen und Empfangen.
Ich denke das ist für mich erst einmal eine gute Lösung.
Also war das Problem, daß beim beenden des Programms auf dem PC der Arduino resetiert wurde und bis nicht über die serielle Schnittstelle Daten übertragen wurden, die Ausgänge nicht angesteuert wurden.
Eine Lösung die ich sehe ist einem Standartstartwert zu bestimmen und mi dem zu starten und dann über die serielle Schnittstelle diesen nach Notwendigkeit zu ändern.