Bitconverter

Eingabe
Direkteingabe Hex: Direkteingabe Dezi: Eingabe als Hex oder Bin (auslösen mit <ENTER>)
Eingabe als Formel (Hex muss mit 0x beginnen)
R4 R3 R2 R1 R0 G5 G4 G3 G2 G1 G0 B4 B3 B2 B1 B0 Info: Bitposition bei RGB565 (65k Farben)
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Info: Bitposition bei Int16
Eingabe Binär
Bitshifter:
 
Alle Bits:
Diverse Binärfunktionen
  
Ausgabe
Hexadezimal 0x0000-0xFFFF (aber auch 32bit möglich) 0x0000
Dezimal 0-65535 (aber auch 32bit möglich) 0
Binär (begrenzt auf 16Bit)  0b0000000000000000
Binär (alternative Darstellung) ____ ____ ____ ____
Farbe aus RGB565 (als Hex) #000000
Farbe aus RGB565
 
Farbe aus RGB565 als RGB RGB(0,0,0)

#Beschreibung

#Vorwort

Als ich mich mehr und mehr mit Mikrocontrollern beschäftigt habe, brauchte ich immer öfter einen Umrechner, für die bei der Programmierung üblichen Zahlenformate.
Besonders wenn es darum geht, die Funktion einzelner Pins festzulegen oder wenn in spezielle Bits irgendwelcher Register eigegriffen werden soll, erwies sich ein solches Tool als sehr hilfreich.
Ich habe dafür ja früher schon das J-Tools Entwickelt, welches ich auf PDA oder PC eingesetzt habe. Jetzt habe ich es in Javascript geschrieben und etwas erweitert, damit ich selbst, aber auch andere davon was haben. Ich denke es ist besser, gleich etwas nutzen zu können, anstatt es erst extra downloaden zu müssen.

#Eingabe

Einerseits können 16bit als Binärzahl eingegeben werden. Man kann auch alle Setzen und Rücksetzen mit der rechten Maustaste. Dann gilt für alle das Gegenteil von der mit rechts angeklickten Box (ist die Box ohne Häkchen, haben danach alle welche und umgekehrt). Über den Checkboxen, sind noch Infos über die Bitposition oder ihre Funktion im RGB565 Format angegeben (65k Farben... eine bei Displays von Geräten öfter verwendete Farbcodierung).
Außerdem können Hexadezimal und Dezimalzahlen eingegeben werden. Diese können auch 32bit groß sein, was dann die Gesamtfunktion aber eher auf Hex und Dezimal beschränkt.
Man kann auch eine Mischung aus Hex und Dezimalzahlen als Formel eingeben. Anders als im Taschenrechner auf der linken Seite (im Seitenmenü), wird ein x nicht als Multiplikation gewertet. 0x ist als Einleitung einer Hex Zahl reserviert. Bei der Direkteingabe steht das 0x zwar mit drin, kann aber weg gelassen werden. Bei der Formeleingabe, ist es Pflicht.
Unter der Biteingabe sind noch zusätzliche Funktionen, die ich für nützlich halte. Alle Bits Setzen und Rücksetzen (hier High und Low genannt) dürfte geläufig sein. Der Bitshifter ist dazu da, die ganze Bitformation zu verschieben. Die Menge der Shifts kann eingestellt werden. So kann man die Farbe Blau (Dezimal: 31) mit 31 🠔 11 zu Rot (Dezimal: 63488) machen.

Der Inverter (Inv) kehrt alle Bits um... wie es ein Inverter halt so macht.
Im RGB565 Format lassen sich so auch Komplementärfarben erzeugen (blau 🠖 gelb).

#Ausgabe

Bin, Hex und Dec, welche ja auch als Eingabe vorgesehen sind, können mit der Schaltfläche "Übernehmen" in die Eingabefelder übernommen werden.
Die Farbausgabe ist nicht so ganz genau. Die Farbinformation für Blau kann bei RGB565 ja auch nur 0-31 betragen. Bei dem Hex Webformat handelt es sich aber um das RGB888 Format, also kann Blau hier 0-255 als Wert haben. Der Converter verschiebt die 5 vorhandenen Bits in die oberen, der 8 Farbbits. Die unteren 3 Bits fehlen also. Darum kann blau so auch nur auf 0-248 (in 31 Stufen) kommen. Für gewöhnlich werden die fehlenden Bits berechnet oder zusätzlich mit kopieren aufgefüllt, aber derartiges hab ich unterlassen. Wer es braucht, kann es sich ja selbst herleiten.

© by joe-c, 2023 - 2024. All Rights Reserved. Built with Typemill.