www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT32AP7000 - SDRAM Initialisierung


Autor: N. John (foces)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Hat jemand vielleicht schon Erfahrung im Umgang mit den AP7000 und 
Speicherzugriff auf externen SDRAM?
Ich beschäftige mich seit 2 Tagen mit dem AT32AP7000 und versuche einen 
externen SDRAM anzusprechen. Aber schon bei der Initialisierung des 
SDRAM (MT48LC2M32B2 - 512K x 32 x 4 banks) komme ich nicht so recht 
weiter.
Die Anleitung für die SDRAM-Init ist meiner Meinung nach nicht eindeutig 
geschreiben.
In der Initialisierungsdoku für den T32AP7000
wird beschrieben, das Mode Register muss zuerst gesetzt werden. Im 
Anschluss daran soll ein Schreibzugriff auf alle Adressen abgesetzt 
werden, der das Mode Register wirksam werden läßt.
(siehe Dokumentation AT32AP7000.pdf Seite 537, Punkt 5).

Kann ich einen beliebigen Schreibzugriff starten damit der Mode-Befehl 
ausgeführt wird? z.B. "AVR32_PIOE.IER = 0x0".
Oder, wie kann ich einen Schreibzugiff überhaupt generieren?
Das Schreiben ist ja nur mit den Befehlen der Userschnittstelle möglich.
also: MR,TR,CR,HSR,LPR,IER,IDR und MDR

Auch der Punkt 7 ist das mir unklar.
Ich stelle wieder das Mode Register auf 3 mit "AVR32_PIOE.mr = 0x3" und 
lade somit die benötigten Daten (CAS latency) aus dem Configuations 
Register.  Wie kann ich die Adressen BA0 und BA1 einstellen? Selbst mit 
dem Configuration Register ist es nur möglich CAS einstellen aber nicht 
die burst length und BA[1:0].

Kann mir das mal jenmand erklären?
Danke schon mal im voraus!

Autor: MatthiasB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kenne deinen AP7000 überhaupt nicht, aber vielleicht hilft dir diese 
Anleitung für den AT91SAM7. Die SDRAM Initialisierung sollte ja gleich 
sein (nur Prozessor Register, Addressen, usw. unterschiedlich) und du 
kannst es auf deinen umschreiben. Sie benutzen auch einen Microm MT48...

"Using SDRAM on AT91SAM7SE Microcontrollers"
http://www.atmel.com/dyn/resources/prod_documents/...

Matthias

Autor: N. John (foces)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich danke Dir Matthias für Deine schnelle Anwort. Das Softwarebeispiel 
hat
mir schon weitergeholfen. Ich habe jetzt auch das Beispiel auf meinen µC 
angepasst. Jedoch habe ich ein Problem mit der Bezeichnung 
"AT91C_BASE_SDRC" Seite 11 , 2. Zeile der Funktion

AT91PS_SDRC psdrc = AT91C_BASE_SDRC;

Für den AP7000 kann ich keine Bezeichnung dieser Art finden.
Wofür steht diese Bezeichnung?
Auch den Pointer *AT91C_SDRAM_BASE" kann ich für den AT32AP7000 nicht 
finden.
es gibt:
              AVR32_SDRAMC_MR_MODE_NOP                    0x00000001
              AVR32_SDRAMC_NOP                            0x00000001
              AVR32_SDRAMC_MODE_NOP                       0x00000001

Jetzt weiss ich nicht welchen ich anwenden soll, um den Befehl
"*AT91C_SDRAM_BASE = 0x00000000;" nachzubauen.
Hast Du mit die Initalisierungroutine bei dem AT91SAM7 schon zum Laufen 
bekommen? Kannst Du mir vielleicht sagen für was das BASE steht?
Dann kann ich möglicherweise einen Bezug zum AP7000 herstellen.

MfG Nico

Autor: gen4ik (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
sdram_test(); ist zum installieren von sdram
habe aber noch nicht RAS und CAS und so weiter eingestellt
reicht bei mir mit
  |(1<<AVR32_PM_PLL0_PLLDIV_OFFSET)
  |(5<<AVR32_PM_PLL0_PLLMUL_OFFSET)

20mhz*5=100 mhz

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.