Suchergebnisse
Suchergebnisse 1-11 von insgesamt 11.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
-
Hallo, ich habe momentan ein kleines Problem. Ich wollte mich mal an Modbus TCP herantasten und habe mir dafür ein Codebeispiel von Youtube geholt. youtube.com/watch?v=NbtNN0cr5OU drive.google.com/drive/folders…SiEA3H8asJJsnSlTK3OKy2vpU Nun folgendes Problem - über den Button btnReadHoldingRegisters werden die einzelnen Register gelesen. In den Textboxen txtReceiMsg und txtResult wird die Rückgabe des Gerätes als Byte (txtReceiMsg) und als UShort (txtResult) zurückgegeben. Beispiel: txtReceiMsg …
-
xored, danke das ist genau das was ich gesucht habe. Einziges Problem was mir bleibt, ich wollte meinen Wert 8294987 nun wie folgt formatieren 8.294,987. Ich finde jedoch keine Formatierungsmöglichkeit hierfür. Egal wie, ich komme immer auf 8.294.987,000 Momentan hängt es bei mir überall. @RodFromGermany: Der Bitconverter wäre für mich nur hilfreich, wenn ich im hex-Bereich arbeiten möchte oder sehe ich das falsch?
-
Gut, ich würde es mal so sagen - das Darstellen des Strings hat geklappt. Die Formatierung funktioniert jedoch nicht wie gewünscht. @Eierlein Auch in deinem Beispiel ist der String nicht wie gewünscht formatiert. Egal was ich mache, der String wird so ausgegeben: 8.294.987,000 und nicht so 8.294,987.
-
Ich muss das Thema nochmal aufgreifen. Ich habe nun einen Wert, den ich einfach nicht richtig umwandeln kann. Aus 436AE78E soll 234.90451 werden. Was mache ich aktuell falsch? Meine Fehlermeldung lautet: System.InvalidCastException: "Ungültige Konvertierung von der Zeichenfolge E7 in Typ Byte." Aber weshalb? Kann ich ein Byte nicht hexadezimal belegen? VB.NET-Quellcode (6 Zeilen)
-
Jetzt habe ich nichts zum Testen, aber ich denke, dass ich es dann so machen müsste: VB.NET-Quellcode (4 Zeilen) Werde es später mal testen. Es sei denn, jemand sieht direkt einen Fehler. Könnte wahrscheinlich auch Convert.FromBase64String nutzen. @Eierlein: Ja, das Format wäre dann Float - Big Endian (ABCD) und nicht mehr INT32 - Big Endian (ABCD).
-
Ich habe es mal wie unten geschrieben gelöst und komme zum gewünschten Ergebnis. Natürlich habe ich während der Versuche ein weiteres Problem entdeckt. Es gibt einen Wert, der lt. Hersteller im Double-Format (Überlauf 1.0e+12) ausgegeben wird. Double bedeutet dann, dass ich 8 Bytes habe... Als Rückgabe vom Gerät erhalte ich "43 69 F1 80 43 69 36 5D". Umgewandelt sollte 938,xxx herauskommen. Ich kriege alles mögliche raus, nur nicht die 938,xxx. Gibt es einen Online Konverter hex to double, ähnli…