Hallo, ich beschäftige mich gerade ein wenig mit einem EEPROM(DS2433) und nun hänge ich bei einem kleinen Problem: Für die Adressierung müsste ich Hex Werte Addieren bzw Dezimal und Hex Werte addieren. Das Funktioniert aber anscheinend nicht so einfach... Ich Habe einen Bereich von 0000h - 01FFh und den müsste ich durchgehen. Das ganze lauft so... ich speichere mir die letzte Adresse zb: 00 03 --> schreibe zb: 2Byte Daten rein --> Adresse soll auf 00 05 erhöht werden(Wie addiere ich zu dem Hex Wert die Zahl 2 bzw wie addiere ich 2 Hex Werte?) --> --> irgendwann ist der Bereich 00FFh erreicht, gibt es da eine Funktion um zu shifften oder so ähnlich oder mach ich das zb: mit einer if abfrage??? Kann mir hier jemand ein Code Beispiel schreiben oder die Funktionnen die ich dazu benötige??? Wem das zu kompliziert ist, einfach sagen was nicht verstanden wurde...es ist kein sehr einfaches Problem Danke lg
Es gibt in Wirklichkeit gar keine Hexzahlen, die bildest du dir nur ein. :-) Hex ist nur eine Schreibweise, denk ruhig in Dezimal, wobei du in ein Byte nur 0-255 reinbekommst, also 3+2=5, wenn du in Assembler schreibst dann werte bei der Addition das Carryflag aus, und addiere dann 1 zum Highbyte falls es gesetzt ist.
Aja, wenn du in C schreibst (ist ja das GCC Forum) dann speicher das in einen 16-bit Integer (uint16_t) und addiere ganz normal. Der Überlauf ist dann halt erst bei 0xffff.
hm danke ;) muss schaun da passt irgendwas anderes auch noch nicht!! der tipp mit dem uint16_t ist sehr gut....danke. irgendwie hat das Ding jetzt ein bisschen ein Eigenleben bekommen...ab 0A resetet sich der AVR zwischendrinnen und durchläuft das ganze Programm nochmal...dabei rechnet er folgendermaßen: 0A...0A --> 0B dh: er muss es zweimal durchlaufen um die Zahl zu erhöhen...ich Blick da grad nicht mehr so recht durch...mal bisschen Ruhen lassen!! lg
So hier der sourcecode..vielleicht kann mir ja wer helfen :D wäre echt super!!! Danke
Nachtrag: Für alle, denen es weiterhilft....das Datenblatt! http://pdfserv.maxim-ic.com/en/ds/DS2433.pdf
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.