Absender: Benjamin Benz
Datum: Mi, 07.03.2007 12:05:37
In-reply-to:
<200703071159.04507.tevers@xxxxxxxxxxxxx>
References:
<BCF016D5ED5AC34FBB655D109519ABCF083EBE@xxxxxxxxxxxxxxxxxxxx> <45EE935C.5090706@xxxxxx> <45EE993F.6010402@xxxxxxxx> <200703071159.04507.tevers@xxxxxxxxxxxxx>
Hallo, >>> ich habe die ganze sache in dieser version >>> auf die spitze getrieben und meine ursprünglichen fkt einfach benutzt, >>> um unter gcc die eprom-fkt des winavr zu simulieren. der kode ist also >>> für pc und mcu gleich. den "nachteil" haben nur neue routinen, da meine >>> pc routinen natürlich keine automatische speicherzuteilung haben, dafür >>> müsste man den compiler ergänzen oder so... > nein, man müsste imho nur, wenn für das PC target compiled wird, eine > entsprechende emulations-Lib zur Verfügung stellen, die identische > Funktionsaufrufe dann abbildet. Wie würde denn so eine Lib arbeiten, denn der avr-gcc-Code sieht ja in etwa so aus: uint8 __attribute__ ((section (".eeprom"))) err15=1; e15=eeprom_read_byte(&err15); das ummapen der Funktion eeprom_read_byte() ist klar, aber wie macht man aus der Deklaration "uint8 __attribute__ ((section (".eeprom")))" eine ordentliche Adresse in einer Datei und wie initialisiert man sie sauber? MfG Benjamin Benz -- Benjamin Benz Heise Zeitschriften Verlag Redaktion c't eMail: bbe@xxxxxxxx WWW : http://www.heise.de Heise Zeitschriften Verlag GmbH & Co. KG Registergericht: Amtsgericht Hannover HRA 26709 Persönlich haftende Gesellschafterin: Heise Zeitschriften Verlag Geschäftsführung GmbH Registergericht: Amtsgericht Hannover, HRB 60405 Geschäftsführer: Ansgar Heise, Steven P. Steinkraus, Dr. Alfons Schräder