Hex <> Dez Wandler bauen

Hallo,

ich versuche gerade, einen Einstieg in das Hobby Elektrotechnik zu bekommen, und möchte einen Hexadezimal Dezimal Wandler bauen, mit einem Mikroprozessor. Ich weiß das es sowas als Taschenrechner fertig zu kaufen gibt und das ein Prozessor evtl. Overkill ist, aber ich will dabei ja was lernen :-)

Mein Gedanke: 17 Taster (0-9, A-F, Umschaltung zwischen Hex>Dez und Dez>Hex) nehmen, an die CPU anschließen, Ergebnis auf einem Display ausgeben.

Das Problem sind natürlich die 17 Taster. So wie ich das sehe, braucht man ja für jeden Taster einen I/O (bzw. Input) am Prozessor, was viel zu viel ist.

Wie wäre jetzt eine Vorgehensweise? Mein erster Gedanke war ein Binärwandler. Damit lassen sich 17 Zustände in 5 Bits packen, was nur 5 I/O pins bräuchte. Geht es mit noch weniger I/O Pins?

Als CPU hätte ich zwei Stück hier zur Auswahl, jeweils Freescale MC9S08QG8

  • 8 Pin, 4 I/O, 1 Input only und 1 Output only (Elektor Spyder Discovery Kit)
  • 16 Pin, 12 I/O, 1 Output only und 1 Input only

Ich vermute das ich mit dem 8-Pin kein Glück habe (auch wenn ich das gerne nehmen würde), weil ich einfach zu wenig Input-Pins (max. 5) habe um sowohl

17 Taster als auch ein Display (und als Bonus evtl. noch eine LED) ansteuern zu können.

Lange Rede, (relativ) kurzer Sinn: Ist der Weg über einen Binärwandler der richtige oder gibt es etwas besseres?

Und was würdet ihr in Sachen Display empehlen? Ich kenne natürlich die üblichen Parallelport-Displays für PCs und Geräte mit Parallelport, aber ich will das Ding so einfach wie möglich halten. Ich suche quasi ein Taschenrechnerdisplay, muss aber auch A-F darstellen können. Das Display muss mindestens 5 Stellen haben, besser 8 oder 10. (Wobei wir da wieder bei den Problemen mit der Ansteuerung durch knappe I/O Pins sind).

Für sachdienliche Hinweise danke ich wie immer.

Reply to
Michael Stum
Loading thread data ...

Hallo Michael,

Sachdienlicher Hinweis: 74HC165

formatting link

Zwei Stueck fuer die 16 Hex-Tasten, den Umschalttaster dann an einen separaten Pin. Kommt zusammen auf etwa einen Euro an Mehrkosten. Oder Du machst einen USA Urlaub, dann ist es nur ein Dollar ;-)

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

"Joerg" a écrit dans le message de news:syCFi.14807$ snipped-for-privacy@newssvr25.news.prodigy.net...

Naja, auf die paar cent kommt es nicht an, ist ja nur ein Einzelstück für jemanden, der regelmäßig HexDez umrechnen muss und dem Calc.exe zu nervig dafür ist :-)

Ich habe gemerkt das ich noch einen Taster vergessen habe - den Bestätigungsknopf.

Der Workflow sieht in etwa so aus:

  • Interner Puffer ist leer
  • Ich drücke eine der 16 Tasten
  • Die Zahl/der Buchstabe wird in den Puffer geschrieben und auf dem Display angezeigt (Beim Dez>Hex Modus werden die Tasten A-F ignoriert)
  • Ich drücke die nächste Taste, die Zahl geht in den Puffer und wird angezeigt
  • Je nach Displaygröße wird das ganze begrenzt (auf 16, 24 oder 32 Bit)
  • Ich drücke auf den Bestätigungsknopf, und die Eingabe wird umgerechnet und auf dem Display ausgegeben (beispielsweise E42A => 58410)

Wären also auf Eingangsseite 18 Tasten (0-F, Umschalt, Bestätigung). Auf Ausgangsseite dann eben das womit man ein Display ansteuert (bei 5-10 Stellen wird das wohl auch ein separates IC sein) und als Bonus noch 1 oder

2 Pins um eine ein- oder zweifarbige LED anzusteuern, da ich das Display nicht für den Modusindikator nehmen will.

Die Shift-Register sehen auf Eingangsseite schonmal interessant aus, danke für den Tipp!

Reply to
Michael Stum

Hallo Michael,

Wenn das mit den Port Pins zu arg pressiert, kannst Du die Dinger kaskadieren:

formatting link

Sieh Dir einmal HD44780-kompatible Displays an. Die finden sich als Ausschlachtware zum Beispiel in Faxgeraeten und Laserdruckern. Manchmal auch auf dem Wuehltisch beim Elektronik-Discounter. Kann man mit vier Bits und einigen wenigen Control Leitungen steuern. Notfalls lassen sich die vier Bits per 74HC164 auch wieder zusammenstutzen.

Diese Displays haben einen ASCII Character Set schon mit drin, der als Gaudi i.d.R. sogar noch auf japanisch umgeschaltet werden kann.

Viel Erfolg. Das ist genau die richtige Methode, sich die Praxis des uC Programmierens reinzuziehen. Es macht viel Sinn, sich erstmal das Konzept sauber und detailliert zu Papier oder in ein Word Dokument zu bringen. Wann was berechnet, gelesen, ausgegeben wird usw. Erst dann den Compiler anwerfen.

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Naja, ich hatte zuerst an was Analoges mit Relais gedacht, aber das ist nicht gerade sinnvoll, vor allem wenn es in die Hosentasche passen soll :)

Ja, aber die Freescale liegen hier rum und lassen sich auch in C programmieren :)

7-Segment reicht leider nicht - da kann ich ein B nicht von einer 8 unterscheiden. (Das Ding soll ja auch Dez > Hex können, und dafür muss ich A-F anzeigen können. Stromaufnahme - wird wohl auf einen 9 V Block hinauslaufen. 2x AAA (2.4 V) dürften etwas zu wenig sein

Sagt mir gerade Bahnhof, aber mit den Begriffen kann ich jetzt wieder Google füttern.

Joergs Ansatz mit den Schieberegistern gefällt mir aber auch ganz gut, weil man die kaskadieren kann. Da ich jeweils 3 Input und 3 Output Pins am kleinen Freescale habe würde ich damit evtl. auskommen wenn ich auf die LED verzichte und das Display nutze. Hmmm...

Reply to
Michael Stum

Moin,

sicher ein interessantes Projekt. Taschenrechner benutzen seit Anfang der 70'er auch Prozessoren, also passt das schon ;-)

Die Taster als 4x5 Matrix anordnen, z.B. in 5 Spalten und 4 Zeilen. Braucht dann nur 9 IO Pins für 20 Tasten. Die Umschaltung HEX/DEZ würde ich per Tastern machen und im Display ein 'H' oder 'd' Anzeigen.

Etwas mager. Ich würde nen ATTiny2313 mit 15 IO Pins oder nen ATMega 48 mit

19 IO Pins nehmen. Die sind im Hobbybereich sehr gängig und können schön in C programmiert werden.

Hier würde sich eine klassische 7-Segment Anzeige wie bei Taschenrechnern anbieten. Sofern die Stromaufnahme unkritisch ist wäre eine LED Version passend.

Im Multiplex wären das dann 7+4 Pins ;-). Die 7 parallel aus dem uC und die Spalten per TTL Dekoder/Treiber 4 zu 10 (74145).

Wenn man nun die Spalten der Tasten mit an den Dispay Spaltendekoder hängt, bräuchte man nur noch zwei IO Pins zusätzlich für insgesamt 20 Tasten.

Mit 13 IO Pins, einem IC und etwas Gemüse (Dioden, Widerstände, ...) könnte der Umrechner realisiert werden. Die Software ist dann aber nicht ganz trivial ;-)

Grüße Robert

Reply to
Robert Rottmerhusen

Hallo Michael,

9V wuerde ich mir verkneifen. Das Zeugs taugt in der Wurzel nicht, ist ein grosser Sch...., aehm, Mumpitz. Selbst bei meinem Multimeter ist letzte Woche schon wieder der Kontaktknopf abgerissen. Jetzt habe ich sie kurzerhand angeloetet. Sieh mal, was der uC braucht. Vielleicht reichen ja drei AA Zellen, viel besser.

Mit etwas Geschick kann man die auch kombinieren. Z.B. indem sie einen gemeinsamen Takt bekommen. Muss man nur sicherstellen, dass der Code bei jedem Lesen der Tasten auch den Schreib-Sermon wiederholt. Aber das ist ja alles "nur Software"

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Oh, dann sind die LED Anzeigen wohl auch zu groß.

Gut, warum also nicht ;-)

Mein TI-36X zeigt 0123456789AbCdEF an, also b und d als Kleinbuchstaben.

Dann auf jeden Fall ein LCD. Bei einem passiven LCD reichen auch die 2.4V. LCD Module, wie von Jörg vorgeschlagen, brauchen meist 5V, neuere evtl. auch nur 3.3V. Mit einem moderenen Schaltregler würde sogar eine AA(A) Zelle reiche, um die Schaltung mit 3.3V oder 5V zu versorgen.

Zum Multiplexberieb von Tastaturen und Displays sollte sich was finden lassen.

Ja, geht auch, braucht aber mehr ICs. Kannst ja mal ein bischen auf dem Steckbrett experimentieren.

Grüße Robert

Reply to
Robert Rottmerhusen

"Michael Stum" schrieb im Newsbeitrag news: snipped-for-privacy@mid.individual.net...

formatting link

--
Manfred Winterhoff, reply-to invalid, use mawin at gmx dot net
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
Reply to
MaWin

Dann sollte sich OP mal die DOG-Displays z.b. bei Reichelt anschauen, Die sind relativ klein, die reflektive Version benötigt nur 3.3 Volt und etwas mehr als 300uA. Zum ansteuern reichen 4 Portpins (modifiziertes SPI).

3 von den Portpins kann man noch für manch andere dinge mitverwenden. Die displays haben normal 2x16 Zeichen, aber es sind auch ein- und dreizeilige erhältlich. Die glaub ich aber nicht bei Reichelt.
--
MFG Gernot
Reply to
Gernot Fink

Michael Stum schrieb:

Hex/Dez Wandler analog mit Relais??? Aber dein Wandler digital mit Relais realisiert wäre bestimmt beeindruckender, als so ein popeliger Taschenrechner. Das ist ja noch besser als die Nixi-Uhr komplett mit Röhren, die mal einer gebaut hat.

formatting link

Reply to
Mathias Weierganz

Ich wußte, daß von Dir sowas kommt. Eben wollte ich auch Logikbausteine vorschlagen, Du warst schneller :-)

Reply to
Ralph A. Schmid, dk5ras

"Joerg" schrieb

Versprech' dir davon aber nicht zuviel, es geht nur ein Katakana-subset, Hiragana gar nicht und von den paar zigtausend Kanji, die es so gibt, auch garnüscht.

Wenn du also deine Anzeigen in japanisch haben möchtest, wird das nix mit diesen Dingern...

Zwar kann man ein paar Zeichen selbst definieren, aber ein Kanji-Zeichen, das aus sagenwirmal 17 Strichen(*) besteht in eine 8x6 Matrix zu zwängen ist auch nicht so der Hit...

(*) Aufgepasst, so manches Strichkonstrukt, dass ein Europäer spontan als drei Striche zählen würde, zählt aber doch nur als ein Strich, es gibt da gewisse Regeln...

Reply to
Ruediger Klenner

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.