PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AVR_Net_Io Board von Pollin



Vbxler
13.10.2012, 17:43
Ich habe einige fragen an C-Spezialisten:

Ich versuche gerade für mein AVR_Net_Io Board von Pollin
eine Softwareversion, welche ich aus dem Int habe, selbst zu compilieren.
Verwende AVR-Studio4 + AVR_Toolchain

*
Die ersten Fehler des Comliler betrafen

PROGMEM char BASE64CODE[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwx yz0123456789+/=";
../base64.c:31:15: error: variable 'BASE64CODE' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
Ich habe das dann auf

PROGMEM const char BASE64CODE[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwx yz0123456789+/=";
geändert und der Fehler wird jetzt nicht mehr ausgegeben.

*
Was ist aber mit folgender Warnung des Compilers gemeint:

(*((unsigned long*)&myip[0])) = get_eeprom_value(IP_EEPROM_STORE,MYIP);
../cmd.c:138:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
Wie müsste ich das schreiben?

*
Könnte mir vielleicht jemand kurz erklären, wass mit folgendem gemeint ist:

*((unsigned long*)&myip[0])


Danke für Eure Hilfe


Vbxler