Bascom -> Atmega -> SRAM

Gast #2682676
Lesenswert?
• ▲
▼
Ich hab folgende Daten:

Statischer RAM-Baustein
DIL 32 512Kx8 55ns

512 kb  * 8       =  4096   KB
4096 kb / 1024       =  4     MB

4096 kb  * 1024       = 4194304   Byte
4194304 * 8      = 33554432  Bit

Dann hab ich mir mal das Datenblatt angeguckt:
http://www.reichelt.de/index.html?;ACTION=7;LA=3;OPEN=0;INDEX=0;FILENAME=A200%252F628512-55%2524%2523SAM.pdf;SID=10T7gNE38AAAIAAFJ6prQ099e4b67f6c4671cd7b2118b4b6c0ea0

wenn der Link nicht geht...ist die Artikelnummer 628512-55 bei reichelt.

Also ich komme auf folgendes:

Zeilenadressen "ROW"      = A0 - A9  10 Stück

Spaltenadressen "COLUMN"   = A10 - A18  9 Stück

Auswahl Speicherbereich   = I/0 1 - I/O 8  8 Bänke




$xramstart       = &H2200
'fürMega256, dann hat er also 8704 / 1024 = 8 kbyte eigenen SRAM?
'also die eigene SRAM Größe des jeweiligen Atmega aus dem Datenblatt 
entnehmen, so dass er ab dort den externen RAM verwendet?

$xramsize       = &H1000   '4096 kbyte bei dem von mir verwendeten SRAM?

Dim sram_array(4194304) As Xram Byte



Also in dem Datenblatt steht eigendlich nur zu den Zeiten für schreiben 
bzw. lesen...für die unteren Angaben irgendwie garnichts.

das war bei der bascom hilfe gestanden:

Config

Xram = 3port ,
Sdbus = 4 ,
Sdcol = 10 ,
Sdcas = 3 ,
Sdrow = 12 ,
Refresh = 500 ,
Initdelay = 3200 ,
Modedelay = 2 ,
Rowcycledelay = 7 ,
Rowprechargedelay = 7 ,
Wrdelay = 1 ,
Esrdelay = 7 ,
Rowcoldelay = 7 ,
Modesel3 = Sdram ,
Adrsize3 = 8m ,
Baseadr3 = &H0000

wie muß ich meine eigene Config gestalten?

Mode        = 4PORT
sdbus        = 8
sdcol        = 9 ?
sdrow        = 10 ?
refresh        =
initdelay      =
modedelay      =
rowcycledelay      =
rowprechargedelay    =
esrdelay      =
rowcoldelay      =
modeselX      =
adrsize3      = 4M
baseadr3      = &H0000  "die erste Adresse beginnt bei 0"


Die andere Frage wäre...wie muß ich die Atmega Pins konfigurieren?

Wäre echt nett wenn mir jemand ein bischen helfen könnte.

Zum Thema sram gibts nix brauchbares wenn man es unter googel sucht.

Cu halli_hallo
Gast #2682679
Lesenswert?
• ▲
▼
Auswahl Speicherbereich   = I/0 1 - I/O 8  8 Bänke

fehler

I/O ist doch der Datenbus oder??? der aus 8 Pins besteht .

wie werden aber die 8 Bänke angesprochen?
Geschieht dies nur mit Zeilen u. Spalten?
#2682820
Lesenswert?
• ▲
▼
Hallo,

der Ram ist Byte-organisiert, es wird also immer ein Byte angesprochen. 
Die Daten gehen in I/O raus bzw. raus.
Die Jeweilge Adresse liegt an A0 - A18.
2 hoch 19 ist 524288, also 512kByte.

Das der Chip intern in irgendwelche Blöcke, Spalten, Zeilen usw. 
organisiert ist bei einem SRAM für den Nutzer völlig egal.

Wie man in Bascom mit einem SRAM umgeht, der irgendwo an einen AVR 
hängt, kann ich Dir allerdings nicht sagen.
Wenn es um das XMEM-Interface eines 8-Bit AVR geht, gibt das Datenblatt 
des AVR dazu Auskunft.

Gruß aus Berlin
Michael

Antwort schreiben

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.

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.