Hallo Leute habe im Netz einiges zum EEPROM am I2C Bus gefunden. Gefunden schon, leider nicht verstanden. Daher meine (blöden) Fragen. Wozu brauche ich z.B. einen AT24C16 oder kleiner am Bus? Wie mache ich das mit dem Speichern? Könnte mir das jemand näher erklären? Gibt es was zum lesen dazu in deutsch? Wie kann ich einen EEPROM beschreiben? Vielleicht erbarmt sich jemand und sorgt für meine Erleuchtung. MFG Mark
Mark schrieb: > Wozu brauche ich z.B. einen AT24C16 oder kleiner am Bus? Ein 8051 hat im Original nur Masken-ROM, und etliche spottbillige µCs sind ähnlich. Oftmals braucht man nur ein paar Handvoll permanent schreibbare Bits zur Kalibrierung. Übrigens sind die häufiger als Du vielleicht vermutest: In jedem Monitor und auf jedem RAM Riegel ist so ein 24Cxx (-kompatibler) Chip zwecks Identifikation und Settings drauf. Mark schrieb: > Gibt es was zum lesen dazu in deutsch? Vermutlich, aber ich würde Dir dringend einen Englischkurs anraten - praktisch alle relevante Doku ist in Englisch (oder Chinesisch).
Sehe ich das richtig, das viele ICs mit AT24C... die gleiche Belegung haben und sich nur durch die Speicgergrösse unterscheiden. Bleibt aber die Frage, wozu brauche ich sie? Datenspeicherung oder fürs Programm?
Mark schrieb: > Bleibt aber die Frage, wozu brauche ich sie? > Datenspeicherung oder fürs Programm? Datenspeicherung. Hier ist etwas zum lesen.
:
Bearbeitet durch User
Mark schrieb: > Wozu brauche ich z.B. einen AT24C16 oder kleiner am Bus? Daten (primär Konfiguration) über Neustarts/Betteriewechsel/Stromausfälle hinweg speichern. > Wie mache ich das mit dem Speichern? I²C-Befehle auf Schreibadresse des EEPROM (siehe Datenblatt deines ICs) > Könnte mir das jemand näher erklären? Das Datenblatt ist ein guter Anfangspunkt. Spezifischere Fragen dann im Forum. > Gibt es was zum lesen dazu in deutsch? gidf > Wie kann ich einen EEPROM beschreiben? I²C-Befehle auf Schreibadresse des EEPROM (siehe Datenblatt deines ICs)
Mark schrieb: > Sehe ich das richtig, das viele ICs mit AT24C... die gleiche Belegung > haben und sich nur durch die Speicgergrösse unterscheiden. Ja, das gilt auch für M24... Abgesehen von Speichergröße und Feinheiten weitgehend identisch. Dasselbe auch für FRAMs, FM24... > Bleibt aber die Frage, wozu brauche ich sie? > Datenspeicherung oder fürs Programm? Programm: Macht keinen Sinn, zu langsam (I2C ist recht gemächlich), zu klein, und mir ist kein Controller bekannt, der externe I2C-Speicher direkt im Programm-Adressraum zugänglich macht. Man müsste also stets ins RAM umkopieren ... Bei SPI-EEPROMS, SPI-Flash sieht's anders aus. Wie schon erwähnt wurde: Kalibrierdaten, Einstellungen, Seriennummer, IP-Adresse, MAC-Adresse etc. Was im Normalbetrieb gelegentlich geändert werden können soll, aber andererseits auch beim Ausschalten nicht verschwinden soll.
Wenn ich das bis hier richtig verstanden sind in vielen Geräte Speicher enthalten. sie dienen zum speichern von Werten oder Einstellungen. Beim I2C Bus kann ich EEROM zum speichern von Daten verwenden. Hat dabei jeder Ic eine eigene adresse und jede Speicherstelle auch eine eigene Adresse?
Mark schrieb: > Wenn ich das bis hier richtig verstanden sind in vielen Geräte Speicher > enthalten. sie dienen zum speichern von Werten oder Einstellungen. Beim Englisch kannst du nicht, ich schicke dir pdf auf deutsch - jetzt kannst du auch kein deutsch ?
Deutsch gibt es kein Problem. Sind aber mehr die Grundlagen zum Bus. Mir geht es das spezielle was den Bus und den EEPROM betrifft. So eine Sachen, wie beschreibe ich den EEPROM über den Bus oder wie speichere ich Daten darauf.
Ardu* Fanboy? Dann siehe hier: https://www.youtube.com/watch?v=VQr5Uq1emiU Sonst musst du schon sagen welchen µC du einsetzen willst.
Sehe gerade dabei geht es um den internen EEPROM. Das andere Video war englisch, hatte ich verwechselt. :(
Bin kein Fan von diesem Kastrat. Arbeite mit dem stink normalen C und ATm 128 und dem I2C Bus auf 5V.
Hallo, "Bleibt aber die Frage, wozu brauche ich sie?" Welche Morivation treibt Dich an, dieses Wissen erlangen zu wollen? MfG
Mark schrieb: > Hat dabei > jeder Ic eine eigene adresse und jede Speicherstelle auch eine eigene > Adresse? Ja, jeder IC muss sogar seine eigenen Adresse haben, oft wird sie bei I2C-EEPROMs durch die Pinbelegung definiert. Da gibts in der Regel 3 Pins über die man die Adresse einstellen kann. Das bedeutet natürlich auch, dass man so nur maximal 8 ICs diesen Typs in einem Bus dann benutzen kann.
Christian S. schrieb: > Welche Morivation treibt Dich an, dieses Wissen erlangen zu wollen? Ist eigentlch sehr einfach. Beim Auslesen einer RFID muss man Daten vergleichen. Welcher Code ist erlaubt welcher nicht. In einigen Beispielen habe ich was gesehen,das ca. 3 oder so Karten begrenzt ist. Wenn ich meh Karten angeben möchte oder Schaltvoränge beim korrekten lesen auslösen möchte muss ich das speichern, vergleichen, auswerten und anwenden. sicher gibt es noch mehr Anwendungen dazu.
Ich verstehe immer noch nicht ganz, warum du dir nicht einfach einen Beispiel Code ansiehst. Da ist wirklich nicht viel Magie dahinter. https://www.mikrocontroller.net/articles/AVR_EEPROM_R/W
Mark schrieb: > Hat dabei > jeder Ic eine eigene adresse und jede Speicherstelle auch eine eigene > Adresse? Kommt drauf an. Die meisten EEPROMs haben eine I2C-Adresse. Es gibt aber auch EEPROMs, wo jeder Block eine eigene I2C-Adresse hat.
Hi >Es gibt aber >auch EEPROMs, wo jeder Block eine eigene I2C-Adresse hat. Hast du da einen Kandidaten parat? MfG Spess
spess53 schrieb: > Hi > >>Es gibt aber >>auch EEPROMs, wo jeder Block eine eigene I2C-Adresse hat. > > Hast du da einen Kandidaten parat? > > MfG Spess 24LC1025 ist, glaub ich, so ein Kandidat. Der hat zwei Blöcke integriert.
Die AVR Mikrocontroller enthalten einen kleinen EEPROM, der für das Speichern von einigen RFID Codes genügt. Die STM32 Controller enthalten einen Flash-Speicher, den man ebenfalls für diesen Zweck verwenden kann. Bei Zugangskontrollen spielt oft die Uhrzeit eine Rolle, so dass man zum Beispiel eine RTC verwendet. Diese enthalten häufig einige freie batteriegepufferte Speicherzellen, die du benutzen kannst. Zugangskontrollen werden häufig zentral über einen PC/Server gesteuert. In diesem Fall brauchen die Module an den Türen weder Uhren noch Speicher. Bevor du an deinen Mikrocontroller externe Speicher hängst, prüfe ob das überhaupt nötig ist. Denn jedes zusätzliche Teil ist eine potentielle Fehlerquelle und kostet Einarbeitungszeit.
Hi >24LC1025 ist, glaub ich, so ein Kandidat. Der hat zwei Blöcke >integriert. Scheint aber eher eine Notlösung, statt eines wirklichen Features zu sein: Datenblatt: This device has an internal addressing boundary limitation that is divided into two segments of 512K bits. Block select bit ‘B0’ to control access to each segment. MfG Spess
spess53 schrieb: >>24LC1025 ist, glaub ich, so ein Kandidat. Der hat zwei Blöcke >>integriert. > > Scheint aber eher eine Notlösung, statt eines wirklichen Features zu > sein: Alles eine Frage der Herstellungskosten. 2*512K ist weitaus billiger als ein 1*1024K (immer noch).
:
Bearbeitet durch User
spess53 schrieb: > Scheint aber eher eine Notlösung, statt eines wirklichen Features zu > sein: Na das ist aber nun doch auch völlig egal, es funktioniert. Wenn man diese EEPROM-Größe benötigt... ;)
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.