NEWS
Dezimal nach Binär wandeln
-
Kurze Fassung:
Wie wandelt man Dezimal nach Binär um und schreibt alle Binärwerte in jeweils einen Datenpunkt? (die ersten 16 Bits)Lange Fassung:
Ich habe da so eine USV mit Netzwerkschnittstelle. Die liefert die Daten nur als dezimalen Wert. (modbus)
Ich würde daraus gerne "true/false Datenpunkte" machen.Bin aber nicht schlau genug.
Das hier bekomme ich z.B. als Wert geliefert:
128733632Mit diesem Konverter kann ich's umwandeln:
https://www.binaryhexconverter.com/decimal-to-binary-converter?fbclid=IwAR3koViEI4HrK-_bqrx6nChQuelp6IFqb3ZAfMr-bDt0e_A3VbwF1Bd0aCkDas kommt dabei heraus:
0111101011000101000111000000(wobei ich nicht genau weis wo da vorne ist...)
Wenn die erste Stelle dann "Test läuft" ist, dann könnten das die richtigen Werte sein.So sieht die Tabelle von der USV aus:
Aber wie geht's mit Blockly?
Kompliziert! -
@roelli Nachdem ich das zufällig schon mal gemacht habe hier:
Funktioniert auch mit Zahlen:
Wenn Du 32Bit als Ausgabe brauchst - dann änderst Du halt das padding von 8 auf 32. Also einfach die Funktion in:
return parseInt(dec,10).toString(2).padStart(32,0);
ändern, dann kommt das raus:
Aber ansonsten helfen Dir sicher die Blockly Gurus weiter - ich gehöre ja der anderen Fangemeinde an.