Hier beschreibe ich zunächst das Verhalten der Spannungen an der seriellen Schnittstelle bei der Kommunikation von HeavyWeather mit einer WS2300-kompatiblen Wetterstation. Die Bilder der Messungen sind Screencopies direkt vom Oszilloskop.
Beim Starten von HeavyWeather wird zunächst DTR und 10ms später RTS positiv, d.h. auf
logisch 0 gesetzt.
Nach 56ms wird DTR wieder negativ (logisch 1) gesetzt. Dadurch ergibt sich ein
Einbruch von RTS von rund 500ms.
Beim Beenden von HeavyWeather wird zunächst ein 3ms-Puls (positiv, logisch 0) auf der DTR-Leitung erzeugt. 3ms danach wird die RTS-Leitung abgeschaltet, d.h. logisch 1 gestzt.
HeavyWeather beginnt ca. 1s nach Abschalten von DTR mit der Kommunikation.
Beim Starten des Programms ist die Impulsform ähnlich der vorgegebenen Form. Allerdings tritt auf der RTS-Leitung ein kurzer positiver Puls auf, der durch das Programm nicht zu erklären ist. Auswirkungen auf die Kommunikation scheint er allerdings nicht zu haben. Die etwas "rauhen" High- und Low-Pegel führe ich auf die etwas schwache Spannungsversorgung des RaspPi zurück.
Der Abschaltimpuls ist trotz programmierter 3ms etwas länger. Auch das scheint keine Auswirkungen auf die Kommunikation zu haben.
Ich habe das Programm jetzt so umgebaut, dass nach dem Empfang des vollständigen Datensatzes die Schnittstelle aus- und wieder eingeschaltet wird. Nach drei Nächten funktioniert noch alles.