mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik internes und externes RAM


Autor: Hauser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe einen LPC2138 mit 32k RAM. Für eine Anwendung reicht das RAM
nicht aus. Frage, kann man das interne RAM noch benutzen wenn ein
externes RAM eingesetzt ist? Wie?

MfG
Hauser

Autor: lordludwig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
den LPC2138 kenn ich ned aber bei ATMEL's kannst du den noch benutzen.
ich vermute bei dem LPC2138 auch, währe ja auch irrsinnig den
abzuschalten*laut denk*

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Sache mit dem externen RAM ist nicht so ganz logisch. Der LPC2138
hat keinen externen Bus!? Ist das ein SPI-RAM oder was?
Kannst Du nicht was vom RAM in das Flash verlagern?

Zu Deiner urspruenglichen Frage, das RAM wird immer zur Verfuegung
stehen.

Autor: Hauser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt doch Flash-Speicher im uC, der Programme ewig speichert. Bei mir
handelt sich vermutlich um SRAM, oder? Also welche Möglichkeiten gibt es
bei meinem Problem?

Ciao
Hauser

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hauser,

unterscheide bitte RAM und ROM.
In den ROM ( Flash ) kommt deine Anwendung rein.
RAM ( SRAM ?! ) ist dein Arbeitsspeicher wo temporäre Daten liegen.
Wie Robert bereits erwähnt hat: wenn du deinen RAM vergrößern möchtest
ist dein LPC2138 leider nicht ganz so 100% dafür geeignet.
Da holst du dir dann lieber einen LPC22xx , der hat nämlich extra ein
Interface dafür.

Grüße

Autor: Mark Struberg (struberg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, kommt drauf an wie man das externe RAM ansprechen will.
Es ist ohne weiteres möglich, zB 128kx8 SRAM (oder DRAM, mußt aber die
Refreshs mit nem Timer selbst machen) per IO ranzuhängen und dort Daten
abzulegen.
Das hat allerdings den Nachteil, daß es eben nicht direkt in den
Adressbereich gehängt wird, und somit nicht per malloc/free gehandhabt
werden kann. Das ganze funktioniert dann eher wie zB eine MMC/SD Karte,
nur eben nicht mit Flash, sondern mit RAM.

Vorteil: funktioniert auch mit 'relativ' kleinen µC (ab 18IO)
Nachteil: nicht direkt in der mem region, und alles was damit verbunden
ist

Eine andere Alternative wurde schon oben erwähnt: Verwendung eines µC
mit externem addressbus
Vorteil: einfachere Programme, schnelleres handling des mem
Nachteil: meist µC mit 144 pins und größer

Autor: Hauser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

enthält das RAM nur vorübergehende Daten oder auch Programme wie
Arbeitsspeicher im PC? Wenn nur Daten finde ich 32k RAM genug.

MfG
Hauser

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
RAM= Flüchtiger Speicher ( Vorübergehende Daten )
ROM= Nicht flüchtiger Speicher ( Dauerhaft gespeicherte Daten, z.B.
dein Programm )

Grüße,
Patrick

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei einem ARM mit embedded Flash kann es je nach Anwendung sinnvoll
sein, Programme aus dem langsamen Flash-ROM ins schnelle RAM zu
kopieren und dort auszuführen.
Je nach ARM-Implementierung verwenden die Hersteller unterschiedliche
Ansätze, um das Problem mit langsamen Flash-ROM-Zugriffen zu
entschärfen; die LPC2xxx-Reihe von Philips verwendet ein 128 Bit breit
organisiertes Flash-ROM, so daß mit einem Zugriff gleich vier
32-Bit-Worte gelesen werden können. Sofern das Programm keine
Verzweigung vornimmt, kann so auch bei 60 MHz Prozessortakt ohne
Waitstates gearbeitet werden; eine Verzweigung (dazu zählen auch
Interrupts) allerdings löscht diesen 4-Worte-Speicher und verlangsamt
so die Angelegenheit ein bisschen.
Das ist gewissermaßen ein sehr rudimentärer Cachecontroller.

Autor: jojo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jjojo

Autor: frage (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wisst ihr vielleicht was für ein einsteiger das richtige wäre um eine 
ganz einfache schaltung mit microprozessor zu bauen? Ich habe fast keine 
erfahrung im programmieren von solchen prozessoren also so ein 
einsteiger set mit anleitung oder so...? danke schon im voraus

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.