Bitconverter
#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.