Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: EEPROM - eigentlich einfach, aber geht nicht! Kategorie: Programmierung Basic (von joergm6 - 11.09.2008 11:03)
 Als Antwort auf Re: EEPROM - eigentlich einfach, aber geht nicht! von Markus - 11.09.2008 10:24
joergm6 nutzt:  CC1-Station V2.0
Hallo Markus,
aha, du hast eine Station 2.0, oben in deinem "... nutzt" steht Unit 1.1.
Also ich würde dir vorschlagen ein "externen" I2C-EEPROM für 2-3€ zu kaufen und diesen zu benutzen. Es ist kein großer Schaltungsaufwand notwendig, + - SDA SDL anlöten und auf Adresse 160 "löten". Dann geht man den ganzen Problemen aus dem Weg.
Hier kannst du dann die eingebauten ChipRAM-Befehle nutzen.
schreiben  ChipRAM(2) = Wert
lesen        Wert = ChipRAM(2)

Gruß Jörg

> ok, ich habe die C-Control-1 Station V2.0 und dafür scheint es keinen "EEPROM"-Befehl zu geben - jedenfalls finde ich keinen.
> Wie ich das jetzt verstanden habe werden die "EEPROM"-Daten direkt hinter den Programm-Code aufs EEPROM geschrieben.
> Ich brauche also ein Schreib-Programm, das exakt so lang ist wie das Lese-Programm.
> Am Besten wäre vom Ende des EEPROMs her die Daten zu positionieren, allerdings finde ich nirgends die Befehle dafür.
> Kann es sein, dass die neuere C-Control weniger kann als die alte??
>
>
> > Hallo,
> >
> > die Programmteile EEPROM und Variablen-Erweiterung gelten für die c-control V1.1 und nicht für andere Systeme.
> >
> > Allgemeine Programme und Lösungen können für andere Systeme angepasst werden.
> > Beispielsweise Steuerungsprogramme, Zeiten, Schaltuhren, Regelungstechnik, Berechnung Ostern, Wochen-Nr im Jahr, usw.
> >
> > Mfg ManfredW
> >  
> > > Hallo Jörg,
> > >
> > > danke für den Tipp! Der Artikel von Manfred Wilzeck hört sich recht gut an, kann ihn aber leider nicht umsetzen.
> > > http://manfred.wilzeck.de/Softwarebausteine_Teil_3.html
> > >
> > >
> > > "Folgende Programmbausteine können kopiert werden.
> > >
> > > Hierfür ist Variablen-Erweiterung notwendig. Siehe Kapitel Stolpersteine 1.11
> > >
> > > ' Definitionen zum Ansprechen der EEPROM-Datei
> > >
> > >  Define EEPROM_Anfang   8000 'Beispiel: ab Adresse 8000 beginnen EEVariable bis 8178
> > > ..."
> > >
> > > 1. die Variablen-Erweiterung klappt nicht, da bei mir weder die Datei "CCBas32.dll" noch der Ordner "Ccew32d" vorhanden ist und auch nichts ersetzt werden kann.
> > >
> > > 2. Define EEPROM_Anfang   8000
> > > wird von meinem Compiler mit "Fehlerhafter Datentyp" kommentiert
> > > C:/Programme/basicpp2006/referenz/htmls/eepromdatentyp.htm
> > > hier steht, dass es auf der M Unit 2 den Befehl gibt:
> > > {EEPROM 156}
> > > ' Adresse des EEPROMS
> > >
> > > Klappt bei mir aber auch nicht -->
> > > "dieser Befehl wird in Basic++ 2.0 nicht mehr unterstützt."
> > >
> > > Gruß Markus
> > >
> > >
> > >
> > > > Hallo Markus,
> > > > ich würde mal sagen, das ist normal. Der EEPROM-Bereich wird direkt hinter das Programm abgelegt. Wenn du ein neues Programm aufspielst, dann geht der vorhergehende Positionszeiger auf diesen Bereich verloren und es werden andere Speicherstellen angesprochen.
> > > > Schau mal auf die Web-Seite von Manfred Wilzeck, hier ist beschrieben wie man den Zeiger auf einen Bereich am Ende des EEPROMs "verbiegt", dieser Bereich bleibt dann solange erhalten, bis das Programm mal zu groß werden sollte und dann auch diese Werte überschrieben werden. Aber dann musst du sowieso auf ein I2C-EEPROM ausweichen ;-).
> > > > Schau mal auch in den Thread "Speichern von Monatswerten".
> > > > Gruß Jörg

 Antwort schreiben

Bisherige Antworten: