Wenn du die 3 Hex Schalter nur im Bereich von 0-9 verwendest gehts.
Wenn du den Hex Bereich 0-15 verwenden willst, musst die Umrechnung entsprechend anpassen
hallo,
ich habe 3 hex schalter und ich will das Signal Dezimal umwandeln.
mein Dezimal Wert soll mindestens 0 und maximal 360 sein
ich hab mir überlegt, erste Schalter für Hunderter, zweite für zehner und dritte für einzer.
Ich benutze Atmega16.......
hier ist mein Programm dafür aber ich weiss nicht ob es stimmt ???
danke für die Mithilfe
Wenn du die 3 Hex Schalter nur im Bereich von 0-9 verwendest gehts.
Wenn du den Hex Bereich 0-15 verwenden willst, musst die Umrechnung entsprechend anpassen
Darfs ein bisschen weniger sein? Für 255 würden ja grad zwei Schalter reichen.Zitat von jarod26
Übrigens kann man Code mit dem [Code]-Tag prächtig ins Posting einarbeiten.
Ciao sagt der JoeamBerg
hallo oberallgeier,
wäre es möglich ein Bsp Lösung zu zeigen
ja könnte auch nur 255 sein.
Ich versteh jetzt eigentlich das Problem nicht.
Da Du ja ohnehin nur die Dezimalwerte der Schalter verwenden willst würde ich gleich BCD Schalter verwenden die nur den Wertebereich von 0...9 können.
Dann liest Du den Wert der Stelle ein uns multiplizierst ihn mit dem Stellenwert.
Ergebnis=Hunderter*100+Zehner*10+Einer
Und schon hast Du den gewünschten Wert in einer Variablen.
Wenn Du dann trotzdem Hex Wertigkeiten verwenden willst, änderst Du nur die Faktoren also.
Ergebnis=Hunderter*256+Zehner*16+Einer
Beim HEX System ginge es auch über Schiebebefehle, wenn dein Compiler nicht "schlau" genug ist, das ohnehin so zu machen.
Hat sich erledigt
vielen Dank.
Lesezeichen