Hallo, o.g. Ports sind in iomxx0_1.h nicht enthalten. Der entsprechende Part endet mit #define PING _SFR_IO8(0x12) #define PING5 5 #define PING4 4 #define PING3 3 #define PING2 2 #define PING1 1 #define PING0 0 #define DDRG _SFR_IO8(0x13) #define DDG5 5 #define DDG4 4 #define DDG3 3 #define DDG2 2 #define DDG1 1 #define DDG0 0 #define PORTG _SFR_IO8(0x14) #define PG5 5 #define PG4 4 #define PG3 3 #define PG2 2 #define PG1 1 #define PG0 0 also mit Port G. Wie muss ich die Datei erweitern, um auf alle Ports des Mega640 zugreifen zu können? Oder gibt es bereits was fertiges? Es wundert mich etwas, dass die Ports selbst in iom640.h nicht definiert werden. Vielen Dank! mk
Schau mal in die "iomxx0_1.h" PS. Manchmal ist ein grep auf ein Verzeichnis ganz praktisch :) Gruß Oliver
Hallo Oliver, der oben gezeigte Auszug ist aus der iomxx0_1.h. PORTL kommt hier z.B. standardmäßig nur unter "#if defined(_ATmegaxx0_)" vor. Anscheinend nimmt er sie aber nicht mit rein, da ich den Fehler "Symbol 'PORTL' could not be resolved" in Eclipse bekomme. mfg
Bekommst du den Fehler nur in Eclipse oder auch beim Compilieren selber? Wenn nur beim Eclipse dann versuch Index->Rebuild.
Die iom640.h definiert das Symbol
1 | _AVR_IOM640_H_
|
und inkludiert iomxx0_1.h, welche aber als Symbol ein
1 | __AVR_ATmega640__
|
erwartet. Definiere
1 | __AVR_ATmega640__
|
in der iom640.h, dann sollten die Portdefinitionen drin sein.
MWS schrieb: > Definiere__AVR_ATmega640__ in der iom640.h Nö. Definiere das Target im Makefile richtig, dann klappt es auch. Ehe man in den Standardincludes rumpfuscht, sollte man sich 100%-ig sicher sein, daß darin der Fehler liegt. Peter
Peter Dannegger schrieb: > Definiere das Target im Makefile richtig, dann klappt es auch. Gut. Wie lautet die Definition Deiner Meinung nach ?
MWS schrieb: > Gut. Wie lautet die Definition Deiner Meinung nach ? Im Make, wo das Target angegeben wird: # MCU name MCU = atmega640 Peter
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.