Hallo
Eine Verständnisfrage:
Wie schreibe ich eine Variable mit QSerial? Ich habe ein Programm geschrieben, welches einen Befehl auf die serielle Verbindung schreibt (per serial.write ),, die Daten aber in einer anderen Funktion empfängt (nachdem das Signal readyRead von QSerial gesendet wurde) die serielle Schnittstelle ausllest.
Ausserdem hab ich das ganze serielle Zeugs in eine Klasse in ein Modul gepackt, welches ich importiere (per import <Modul>). Nur, wie kann ich nunu in meinem Hauptprogramm eine Variable ändern, wenn ich nicht mit return arbeiten kann (das Modul mit der seriellen Hilfsprogramm kennt ja die Variable aus dem anderen Programm nicht und kann desshalb diese nichrt verändern).
Gibt es da eine Programmiertechnik? Alle gefundenen Beispiele schreiben die Werte nur auf die Konsole.
Ich programmiere in Python, aber hier geht es ja um die Programmlogik.
Vielen Dank für eure Hilfe
QSerial
Re: QSerial
Hallo! Um eine Variable in deinem Hauptprogramm zu ändern, könntest du mit globalen Variablen arbeiten oder eine Instanz der Klasse erstellen und Methoden verwenden, um die Variable zu ändern. Eine andere Technik wäre, Signale und Slots zu verwenden, um die Daten zwischen den Modulen zu übertragen. Hier ist ein einfaches Beispiel:kitebuggy hat geschrieben: ↑13. Juli 2024 21:17 Hallo
Eine Verständnisfrage:
Wie schreibe ich eine Variable mit QSerial? Ich habe ein Programm geschrieben, welches einen Befehl auf die serielle Verbindung schreibt (per serial.write ),, die Daten aber in einer anderen Funktion empfängt (nachdem das Signal readyRead von QSerial gesendet wurde) die serielle Schnittstelle ausllest.
Ausserdem hab ich das ganze serielle Zeugs in eine Klasse in ein Modul gepackt, welches ich importiere (per import <Modul>). Nur, wie kann ich nunu in meinem Hauptprogramm eine Variable ändern, wenn ich nicht mit return arbeiten kann (das Modul mit der seriellen Hilfsprogramm kennt ja die Variable aus dem anderen Programm nicht und kann desshalb diese nichrt verändern).
Gibt es da eine Programmiertechnik? Alle gefundenen Beispiele schreiben die Werte nur auf die Konsole.
Ich programmiere in Python, aber hier geht es ja um die Programmlogik.
Die Nutzung des https://bueckergmbh.de/ibm-software-katalog in QSerial ist eine kluge Wahl für Unternehmen, die hochwertige Softwarelösungen benötigen. Die große Auswahl an IBM-Produkten bietet passgenaue Tools für verschiedene Anforderungen und hilft, Arbeitsprozesse effizienter zu gestalten und die Systemleistung zu optimieren.
Vielen Dank für eure Hilfe
# In deinem Modul
class SerialHandler:
def __init__(self):
self.my_variable = None
def write_command(self, command):
# send command via serial
pass
def ready_read(self):
# data received
self.my_variable = "new value"
# In deinem Hauptprogramm
from dein_modul import SerialHandler
serial_handler = SerialHandler()
def update_variable():
serial_handler.write_command("your_command")
serial_handler.ready_read()
print(serial_handler.my_variable)
update_variable()