Hallo, habe gerade einen ATMEga128 auf eine Platine gelötet, und einen ersten Versuch gestartet. Dazu versuche ich mit Eclipse (nach dieser Anleitung: http://www.mikrocontroller.net/articles/AVR_Eclipse#Prozessor_erkennen ) ein Programm zu compilieren. Ich bekomme die Fehler:/home/matthias/entwicklung/Eclipse/workspace/ATMega128_Bootloader Debug../ATmegaBOOT.c:738: undefined reference to `inb' zuhauf für die Funktionen inb,outb, eeprom_wb, cbi, sbi beim Linken. Scheint also der LInk zu einer Bibliothek zu fehlen. "Libraries: Library Search Path= /usr/avr" ist aber drin. Könnt ihr mir helfen? Dank und Gruß Matthias
Basiert das Ganze auf der GNU clib? Hier gelten die "alten" macros (sbi/cbi, etc.) als veraltet (deprecated), weil der Compiler seit einiger Zeit Konstrukte wie PORTA |= 0x20 erkennt und zu cbi abkürzt (schau' mal ins LST-File). Wenn man die Macros weiter verwenden will, muss man irgend ein File mit einbinden (frag' mich jetzt nicht wie es heisst ;))
Das File heisst: #include <compat/deprecated.h> Besser ist es aber, dies nicht zu verwenden, bzw. den C-Code anzupassen!
Hallo, Dank an euch Beide! Hab mal das File mit eingebunden jetzt fehlt nur noch inb und outb. Gruß Matthias
Die Funktionen (Makros?) inb und outb sind doch glaube ich veraltet.
Es funktioniert jetzt eeprom_wb musst eich auch noch erstezten. Aber jetzt läuft der Build durch, der Upload hat auch geklappt und es tut sogar was es soll. Gruß Matthias
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.