Eprom Adressierung

Gast #6702215
Hallo,

ich möchte für ein Retro-Projekt ein Dezimal zu 7-Segment (Anzeige) 
Decoder mittels Eprom aufbauen. Also die 7-Segmente (LED) schließe ich 
an den Datenleitungen D0 - D6 an. An den Adressleitungen A0 - A10 möchte 
ich zehn einzelne Taster anschließen. Wenn man nun jeweils ein Taster 
betätigt soll die die Ziffer (0 - 9) auf dem Segment aufleuchten. Die 
Beschaltung von Eprom (Pullup, etc.) ist mir bekannt. Ich möchte nun die 
richtige Adressen im Editor des Programmers beschreiben. Dort kann ich 
z.B. die Speicherstellen von 0000 - 7999 mit 00 oder FF beschreiben. Mir 
ist jetzt nicht klar, welche Speicherstelle nun der Taster an A0 - A10 
in meinem Editor hat. Dort möchte ich das Bitmuster 00 bzw. FF an die 
richtige Position für die 7-Segment Anzeige schreiben und brennen. Mit 
dem Taster wird nur immer eine Adressleitung auf Low gelegt. Alle 
anderen Adressleitungen bleiben auf High. Gibt es dafür irgendwo eine 
Tabelle für die Zuordnung der Adressleitung zur Speicherstelle, ich habe 
im Netz nichts gefunden.

Klar geht das heute alles einfacher mit fertigen TTL-Bausteinen, soll 
aber hier absichtlich mit einem alten Eprom aufgebaut werden.

Vielleicht kann mir jemand ein paar Tips zum Verständnis geben.

Vielen Dank
Stefan.
Beitrag #6702221 wurde von einem Moderator gelöscht.
Stefan schrieb:
> Zuordnung der Adressleitung zur Speicherstelle

Angenommen, dein EPROM hat 8 Adressleitungen, dann stellt die Zahl, die 
dort an den Adressleitungen anliegt die Speicheradresse dar.
Wenn es beispielsweise so aussieht:
A0 = 0
A1 = 1
A2 = 0
A3 = 0
A4 = 0
A5 = 0
A6 = 0
A7 = 0

Dann liegt am Ausgang eben genau DER gespeicherte Wert an, der an der 
Adresse 0b00000010 bzw. 0x02 gespeichert liegt.
Stefan schrieb:
> An den Adressleitungen A0 - A10 möchte
> ich zehn einzelne Taster anschließen.

Das sind dann aber 11 Adressleitungen.

Stefan schrieb:
> Mir
> ist jetzt nicht klar, welche Speicherstelle nun der Taster an A0 - A10
> in meinem Editor hat.

Dann schreib die Bitmuster an A0...A9 auf ein Blatt Papier, wenn jeweils 
eine Taster gedückt ist. Das ist dann die Adresse. Wahrscheinlich willst 
du ein HEX-Darstellung haben. Dann musst du nur jeweils 4 Bits in 0...F 
umsetzen.
Gast
Stefan schrieb:
> Mir
> ist jetzt nicht klar, welche Speicherstelle nun der Taster an A0 - A10
> in meinem Editor hat.

Wenn Du Pulldowns hast, und der Taster nach High zieht, dann sind die 
Speicherstellen für Taster Tx mit T0 an A0 ... T10 an A10:

2^(Tx)

Also 1 für T0, 1024 für T10, ...
Gast
jo schrieb:
> Was soll passieren, wenn du 2 (der noch mehr) Tasten gleichzeitig
> drückst?

Er braucht ja nur 7 Ausgänge, den übrigen kann er zur Fehleranzeige 
benutzen und eine Sirene ansteuern. Oder er zeigt ein E an für Error 
oder F für Fehler.

Grundsätzlich kann er ja 1024 verschiedene Eingangskonfigurationen 
erzeugen und für jede davon frei festlegen was angezeigt wird, ist nur 
etwas viel Arbeit.

Georg

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 5 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.