Forum: Mikrocontroller und Digitale Elektronik Problem mit Schulaufgaben


von zicane (Gast)


Lesenswert?

Wir haben in meiner Klasse Schulaufgabe zum Mikrocontroller (8051)
bekommen und ich habe Probleme bei der Lösung

Die Aufgabe (b)
Der Adressraum des Mikrocontrollers beginnt bei Adresse 0h. Berechnen
Sie die Größe des maximal adressierbaren Speichers und geben Sie den
zugehörigen Adressraum (=Wertebereich der Speicheradressen) in
dezimalen und hexadezimalen Werten an.

Wäre nett wenn mir jemand helfen könnte, auch meine Klassenkameraden
haben keinen Plan wie sie das lösen sollen

von Tobi (Gast)


Lesenswert?

immerhin ehrlich das es hausaufgaben sind :)

hilft trotzdem nicht: wo hast du denn schon versucht dich zu
informieren? jetzt erzähl nicht, dass google nicht genug
einsteigerseiten zum 8051 ausgibt, das glaubt sowieso keiner

von Jörg (Gast)


Lesenswert?

Wenn Du weißt, wieviele Adress-Leitungen der Chip hat, kannst Du den
theoretischen Adress-Bereich leicht ausrechnen:

n = 2 hoch x, wobei x die Anzahl der Adress-Leitungen ist.

Beispiel:

Dein Chip hat 16 Adress-Leitungen.

n = 2 hoch x = 2 hoch 16 = 65.536 Bytes.

Ganz genau spricht man dann von 64kByte x 8 oder von 64kByte x 16 (1
kByte hat 2 hoch 10 Bit, sind genau 1.024Byte; und 65.536Bytes geteilt
1.024 ergibt 64kByte), je nachdem, wieviele Bit Breite der Speicher
hat.

Alles klar?

Jörg.

von zicane (Gast)


Lesenswert?

Ich suche schon länger nach infos zum 8051 (bei der suche bin ich auch
auf diese seite gestoßen) aber die informationen die ich finde helfen
nicht bei der lösung dieser aufgaben.

von zicane (Gast)


Lesenswert?

In der Aufgabenstellung standen die Bausteine 6264-70 (DIL28 8K*8 70ns)
und 62256 (DIL28 32K x8 80ns) kann ich damit die Anzahl der
Adressleitungen bestimmen?

Wenn ich jetzt den Adressbereich von 64kBytes habe wie muss ich dann
den Adressraum bestimmen?

von Johannes Raschke (Gast)


Lesenswert?

Die Rechnung von Jörg war nur ein Beispiel, um Dir den Lösungsweg
aufzuzeigen.

Bezieht sich die Aufgabe jetzt auf den Speicherbaustein 6264-70 oder
auf den Controller 8051?

Wie gesagt, der 6264 ist ein Speicherbaustein. D.h. er hat
Adressleitungen, wo Du festlegst, an welcher Adresse
(Speicherplatz-Nummer) Du lesen bzw. schreiben willst, und
Datenleitungen, wo der gespeicherte Wert bzw. der zu speichernde Wert
angelegt wird.
8K*8 bedeutet, der Baustein hat 8K (=8*1024, also 8192) Speicherplätze,
und in jedem dieser Speicherplätze sind 8 Bit abgelegt.
Da nun also 8192 Speicherplätze vorhanden sind, hat der höchste
adressierbare Speicherplatz auf dem Chip die Nummer 8192, das ist
gleich 2000h.
Um so viele Speicherstellen anwählen zu können, benötigt man 13
Datenleitungen, denn 2^13 = 8192.

Aber zurück zum Controller 8051. In
http://elektronik.kai-uwe-schmidt.de/8051entw/80C51prog.pdf
wirst Du direkt auf der ersten Seite die Information finden, daß der
Controller 64kB Speicher adressieren kann. Das jetzt umzurechnen in
Dezimal und Hex sollte doch wohl zu schaffen sein, oder?

von Johannes Raschke (Gast)


Lesenswert?

Ach ja, Adressraum = Adressbereich. Das ist eben der Bereich von 0 bis
[Nummer der letzten adressierbaren Speicherstelle].

von Michael (Gast)


Lesenswert?

@ Johannes, kleiner Flüchtigkeitsfehler.
Die höchste Speicheradresse ist 8191 dez oder 1FFF hex. Um unseren
Schulfreund weiter zu verwirren: du hast 8192 Speicherplätze, aber
Platz Nummer 0 (Null) ist der 1. Speicherplatz. Bei Speicherplatz 2000
Hex ist Adressleitung 14 (nicht vorhanden beim 8K-Ram) high. Bei 1FFF
sind alle Adressleitungen high. Genug verwirrt?
Michael

von zicane (Gast)


Lesenswert?

Ich versuche es jetzt noch mal in meinen Worten wiederzugeben
Die erste Adresse ist 0 und die letzte ist 1FFF.
Es gibt 8192 Speicherplätze und jeder ist 8 Bit groß.

Wieviele Adressräume gibt es insgesamt?

von Thomas Burkhardt (Gast)


Lesenswert?

Das ist der Adressraum :)

von zicane (Gast)


Lesenswert?

Dann vielen Dank für eure Hilfe!!!

von thkais (Gast)


Lesenswert?

Also, ehrlich: Zum 8051 findet man doch massig Informationen.
Kleiner Tipp am Rande: Ziemlich kompliziert für den Anfänger ist der
gemultiplexte Adress/Datenbus. Am besten zählt man die Adressleitungen
nach dem Latch.
Übrigens entsprechen die 8192 Bytes nicht dem Adressraum des 8051.
Mit zu beachten ist auch, daß der Controller eine Harvard-Architektur
besitzt - durch die Trennung von Daten- und Adressspeicher verdoppelt
sich der maximal benutzbare Speicher nochmals.

von Jens123 (Gast)


Lesenswert?

ohh jeh....

erinnert mich an meine ausbildung... an den likas nülle kisten =)

ich hab hier im tabellenbuch eine hand voll infos mit befehlssatz

gruss jens

von zicane (Gast)


Lesenswert?

Übrigens entsprechen die 8192 Bytes nicht dem Adressraum des 8051.

???
Warum nicht???

von andré (Gast)


Lesenswert?

Weil ein Raum ein Bereich ist. 8192 ist nur eine Position dieses
Bereichs (genau genommen ist er sogar schon außerhalb...). Der ganze
Raum/Bereich waere dann also 0-1891.

mfG

von zicane (Gast)


Lesenswert?

hast du dich verschrieben?
0-1891 -> 0-8191
Also geht der Adressraum von 0 bis 8191, es sind insgesamt aber 8191
Bytes oder?

von zicane (Gast)


Lesenswert?

natürlich 8192 Bytes

von andré (Gast)


Lesenswert?

Ja, verschrieben. Nochmal ja, es sind 8192 Byte, aber der Aressraum ist
dann "0-8191", nicht einfach nur "8192" :).

mfG

von Christof Krüger (Gast)


Lesenswert?

Na Moment, wenn ein 8K SRAM anhängt, dann ist die höhste Adresse 8191,
richtig. Aber generell können wohl bis zu 64k SRAM dran, nicht dass
zicane jetzt verwirrt wird (siehe seinen anderen Thread)

von thkais (Gast)


Lesenswert?

Öhm - versteh ich nun etwas falsch? Es ging doch in der ursprünglichen
Frage um den Adressraum des 8051 - und der ist mal garantiert größer
als 8K.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.