Hallo,
irgendwie verstehe ich das jetzt mit den Pointern auf Flashspeicher nicht![]()
Als Beispiel hier ein Miniprogramm in C:
Es hat nicht viel Sinn, soll einfach nur deutlich machen, wo mein Problem liegt.Code:#include<stdio.h> void zeige(void) { printf("Hallo, hier bin ich\n"); } void zeige2(void) { printf("und hier noch einmal\n"); } int main(void) { typedef void (*funktion) (void); funktion feld[] = {&zeige,&zeige2}; feld[0](); feld[1](); return 0; }
Auf dem PC klappt es ja Prima, auf dem AVR hol ich mir ja irgendwelche RAM Adressen.
Ich weiß daß es an der Harvard Architektur und an den getrennten RAM/FLASH/EEPROM Adressräumen liegt, es ist auch kein Problem Daten zu lesen, nur halt mit Zeigern krieg ich das nicht hin
Aus der Doku zu avr-gcc werde ich auch nicht schlauer...
Könnte mir mal jemand unter die Arme greifen und mir mal sagen wie ich das Miniprogramm in AVR implementiere ?
Gruß Sebastian







.
Zitieren

Lesezeichen