Hallo! Ich möchte mir ja eine Lüftersteuerung für meinen PC basteln, und habe es soweit fast fertig, allerdings muß ich jetzt die Temperaturwerte vorher via ISP einspielen, bei einer späteren Änderung im Menü speichert er den Wert nicht (ist klar, halt RAM). Was kann ich tun um ein paar bytes fest zu speichern, hat der AT90s4433 ein internes flash wo sowas möglich ist? Wenn ich ein externes benötige, wo bekomme ich das eine Typenbezeichnung wäre super, da sonst finde ich das im leben nicht. Danke!
hallo, also ich kenne das so: im flash speichert man das abzulaufende programm, und im eeprom kann man variablen speichern. welche programmiersprache benützt du? bin selber noch anfänger, vielleicht stimmts auch nicht, was ich hier schreibe. mfg raoul4
Schaust halt ins Datenblatt und suchst nach EEprom, zu 99% hat 4433 eins. Sollte er keines haben oder zuwenig Platz google nach i2c und EEprom und du wirst sicher fündig. grüsse leo9
4433 hat ein internen EEPROM Da kannst du das bequem ablegen, im Datenbaltt des 4433 ist beschrieben wie du auf das EEPROM zugreifen kannst, ist relativ einfach, Address anlegen, strobe, Datum lesen/schreiben. Mit den Prommern, mit denen du den code ins flash schreibst, kannst du idR auch das EEprom initial beschreiben, falls du im Betrieb nur lesen willst. Externe Lösungen sind komplizierter zum ansteuern, wenn dann würde ich auf ein I2C EEprom zurückgreifen z.B. 24C01 ciao remo
Ja aber kann man das EEprom aber auch wieder beschreiben, also im laufenden Programm Variablen zwischenspeichern, die nach dem ausschalten noch da sind? Was genau für ein Teil benötige ich den? Ich programmiere mit Bascom Basic, und finde das eigendlich ziemlich gut.
Hi! Ich würde dir empfehlen, die variablen am anfang zu lesen und am Ende des Programms zu speichern. Ich meine damit nur das der Wert nicht dauern ändern soll dafür kannst du eine normale Variable nehmen..Dies nur, weil ein Eeprom nicht beliebig oft beschrieben werden kann. Sondern jede Zelle 'nur' etwa 100000 mal. Und sagen wir du setzt die Variable zum Beispiel so ein: for a = 1 to 10000 next a ..wobei a diese Variable wäre, wäre die Zelle schnell mal futsch.. Aber guck mal in der Bascom Hilfe unter: readeeprom writeeeprom Es besteht auserdem die Möglichkeit eine Variable als EEprom Variable zu definieren. Dies ginge z.B. so: Dim a as eram byte MFG Nik
Hi, du solltest in deine EEPROM Funktion einige wichtige Sachen beachten. z.B. Wert nur bei Aenderung ins EEPROM speichern. Erhoeht sehr stark die Lebensdauer des EEPROMS. Desweiteren ist darauf zu achten das du das erste Byte im EEPROM nicht benutzt, da es vorkommen kann das es nach einem RESET geloescht wird. Mfg Dirk
Danke für die Antworten, hat mir sehr geholfen. Der Wert soll eigendlich nicht so oft geändert werden, halt nur um einen Sollwert einer Temperatur zu speichern, also wird dieser Wert dann (fast) immer nur gelesen. also dim as eram byte wäre genau das richtige. Nochmal besten Dank!
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.