Hallo.. Ich suche einen schnellen (dafür flüchtigen) 64kB Speicher um ihn an einem I2C Bus zu betreiben. Das Problem ist, dass ich eine spezielle Speicherarchitektur benötige. Das ganze soll für ein kontinuierliches Sampeln verwendet werden. Ich stelle mir das so vor, dass das Shiften automatisch von statten geht. Also wenn der Speicher mit 1042 64Bit-Werten voll ist und der nächste Wert folgt müssten ja alle Werte nach Vorne shiften, der fordere rausfallen und der neue hinten angehangen werden. Gibt es speicher dieser Art? Das würde unglaublch viele Speicherzugriffe sparen. Mit freundlichen Grüßen, Sebastian
Was du suchst ist ein Ringbuffer. Denn kann man in Software implementieren. Wo dann die Daten liegen (Ram, Eeprom oder extern via I2C) sollte erstmal keine Rolle spielen. Vielleicht mal danach suchen? Es gibt da einige schöne Beispiele, wie man das machen kann. cu, mz
Dankeschön.. Ich werde suchen und meine Resultate präsentieren! Dieser Begriff hat mir gefehlt! ;)
Gut, im Prinzip handelt es sich dabei ja nur um eine (doppelt) verkettete Liste mit zwei iterierenden Zeigern. Welche möglichkeit ist denn nun die beste, diesen Speicher in den I2C auszulagern? Ich muss letztendlich ca 1000 mal 64 Bit speichern, der AVR reicht da natürlic nicht. Ich habe ferner leider nicht genug I/O Ports um einen RAM anzuschließen. Da ein I2C eh auf der Platine ist, würde sich das ja anbieten. Gruß, Sebastian..
I2C SRAM dieser Kapazität kenne ich nicht, es gibt aber ebenso "schnelles" 64KB FRAM mit I2C: FM24C512-G, erhältlich beispielsweise bei TME. Dass der nichtflüchtig ist dürfte ja nicht stören. Das Shiften macht man natürlich in Software. Als Ringpuffer, wie schon skizziert wurde.
Eben. KB=Kilobyte. Da 8 Bit ein Byte darstellen sind 512Kbit=64KByte=64KB.
Ok, ich hatte seine 64kB blind übernommen (gängige Schreibweise ist 64Kb=bit, 64KB=Byte). Dann nehme er halt nen kleineren Baustein, wenn die Löcher im grossen zu sehr auffallen. Gibt's als FM24C64 auch, wenn er mag auch mitsamt Uhr.
Ich meine nur, bei 8k Byte kommt er vielleicht doch mit internem Speicher aus?
In welcher Zeit sollen die 64KByte gespeichert werden? I2C ist oft sehr langsam. SPI würde schneller gehen. Nur so als Hinweis.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.