Re: Neue beta: LONG>EEPROM>LONG Kategorie: Programmierung C (von PeterS - 8.10.2010 9:33) | |
Als Antwort auf Re: Neue beta: LONG>EEPROM>LONG von Joerg - 8.10.2010 7:02
| |
> > > > > > > > > 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? Ja, sollte funktionieren. Gruss Peter > > > Grü�e Jörg > > > > > > | |
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum