Kürzlich ist ein Programmfehler im Zusammenhang mit der
Bildschirmdarstellung der Diagramme/Plotter/Oszillogramme aufgetaucht.
Während bei mir alles richtig dargestellt wurde, gab es wohl auf vielen
anderen PCs eine falsche Diagrammgröße. Es hat etwas mit der
LCL-Skalierung (High-DPI) zu tun. Man kann für den Bildschirm
einstellen, ob man alles mit 100% darstellt oder auf z.B. 125% oder
150% vergrößert. Während der Entwicklung hatte ich mit 125% gearbeitet,
und da lag der Fehler. Ich selbst konnte ihn erst auf anderen PCs
nachvollziehen. Um das Problem zu beseitigen, habe ich nun bei einer
Größe von 100% alles überarbeitet und neu kompiliert. Jetzt sollte es
auf allen Windows-PCs mit oder ohne Vergrößerung funktionieren.
Ein zweites Problem ist aufgefallen, wenn das Programm ohne die
korrekte COM oder ganz ohne einen passenden Controller gestartet wird.
Beim Start wird nun sofort angezeigt, ob die in der Ini-Datei
gespeicherte Schnittstelle geöffnet werden konnte. Bisher konnte sich
das Programm in den TestLab-Funktionen aufhängen, wenn die
Schnittstelle geschlossen war. Daten wurden angefordert und kamen nie.
Jetzt wurde die Empfangsfunktion so geändert, dass bei geschlossener
Schnittstelle Nullen zurückgeliefert werden. Im Plotter oder
Oszilloskop sieht man dann eine Nulllinie.
Noch eine dritte Sache wurde verändert. Wenn ein laufendes Programm
Print-Daten erzeugt, kann man ins TestLab umschalten und sie plotten.
Bei der Rückkehr in den PicoBasic-Editor war aber nicht ohne weiteres
zu erkennen, ob das Programm noch läuft. Nun wird aber bei jedem
Neustart und bei der Rückkehr ins PicoBasic das Ausgabefenster
aktiviert. Man sieht also gleich, ob Daten gesendet werden.
Und die vierte Änderung betrifft den XY-Plotter. Da wurde die
Reihenfolge der Daten angepasst. Jetzt beginnen die Daten immer mit dem
x-Wert: x y x y xy ...