Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Neue beta: LONG>EEPROM>LONG Kategorie: Programmierung C (von Joerg - 8.10.2010 7:02)
Als Antwort auf Re: Neue beta: LONG>EEPROM>LONG von ulrich korth - 7.10.2010 19:11
Ich nutze:
C-Control Pro Mega128
> > > > > > > > Hallo Peter,
> > > > > > > > hast du vor, ein EEPROM_WriteLong/ReadLong anzubieten oder muss man da selber basteln?
> > > > > > > > Wenn basteln, wer hat 'nen einfachen Vorschlag??
> > > > > > > > Gruss Ulrich
> > > > > > >
> > > > > > >
> > > > > > > Hallo Ulrich,
> > > > > > >
> > > > > > > ich würde es ähnlich machen wie in
> > > > > > >
> > > > > > > http://www.c-control.de/c-control-pro/applikationen/applikationen.html
> > > > > > >
> > > > > > > 'Funktion Float2Byte (zerlegt eine Float in 4 Bytes)'
> > > > > > >
> > > > > > >
> > > > > > > void EEPROM_WriteLong(word pos, word in[])
> > > > > > > {
> > > > > > >     EEPROM_WriteWord(pos,  in[1]);
> > > > > > >     EEPROM_WriteWord(pos+2,in[0]);
> > > > > > > }
> > > > > > >
> > > > > > > Vielleicht geht es ja auch mit EEPROM_WriteFloat...
> > > > > > >
> > > > > > >
> > > > > > > Grü�e Jörg
> > > > > > >
> > > > > > >
> > > > >
> > > > > Oops, mu� natürlich so hei�en:
> > > > >
> > > > > void EEPROM_WriteLong(word pos, dword val)
> > > > > {
> > > > >     EEPROM_WriteWord(pos, val);
> > > > >     EEPROM_WriteWord(pos+2, val>>16);
> > > > > }
> > > > >
> > > > > >
> > > > > > Gruss Peter
> > > > > >
> > > > Hallo Jörg und Peter,
> > > > danke für eure Tips. Die entspr. Read Routine geht dann so:
> > > >
> > > > long EEPROM_ReadLong(word pos){
> > > >   long l;
> > > >   l=EEPROM_ReadWord(pos+2);
> > > >   l=(l<<16) + EEPROM_ReadWord(pos);
> > > >   return l;
> > > > }
> > > >
> > > > Grüsse Ulrich
> > > hallo nochmal,
> > > wenn in den Projekt Optionen 'Warnung bei Aufruf wurde Argument gewandelt' angehakt ist,
> > > gibt es leider dann bei EEPROM_WriteLong 2 Warnungen. Muss man wohl mit leben --- Oder?
> > > Gruss Ulrich
> >
> > Momentan schon. Ich mache mir da aber nochmal Gedanken.
> >
> > Gruss Peter
> Peter, wenn du denn 'denkst', dann denk bitte auch an MSG_WriteLong. Auch an MSG_WriteHex.
> Da gibts die gleichen Warnungen..
> Gruss Ulrich

Hallo Peter,

mit Str_Printf() und den optionale flags (0,l) soltes es doch eigentlich mit 32Bit Integer gehen oder?
Ist dies auch bei %x gültig?


Grü�e Jörg








    Antwort schreiben


Antworten:

Re: Neue beta: LONG>EEPROM>LONG (von PeterS - 8.10.2010 9:33)