Hi, also ich habe jetzt mehrere Probleme, aber erst mal zu meiner Ausstattung: ich habe den ATmega8L hier außem Shop und die Entwicklungsplatine + ISP. Also nix selber gebaut. Jetzt habe ich schon sooooo oft probiert eine hex oder rom datei zu erstellen, aber es hat immer noch nicht funktioniert! Es kommt folgende Fehlermeldung: avr-objcopy: gcctest1.obj: Invalid bfd target Was ist das? Ich benutzte Ultraedit! Mit Bascom-GCC habe ich keine Probleme es zu erstellen, doch wenn ich es dann meinen MC mit Yaap programmieren will, mache ich Autoprogramm, doch beim Blank Check, sagt er: "Leer!". Was soll das denn? Erkennen tut er den MC! Ihr habt doch sicher Ideen oder? Verzweifle langsam, finde auch keine Dokumentation, der Link hier bei "AVR-GCC" ist tot :( Eine verzweifelner aber dankender Ferdi!
Bitte tu Dir und uns einen Gefallen und schmeiß die Uralt-Versionen der Tools weg. Danach installierst Du Dir ein WinAVR, und setzt entweder Dein Makefile von WinAVR's Beispiel-Makefile neu auf, oder nimmst <Eigenwerbung> http://www.sax.de/~joerg/mfile/ </Eigenwerbung>, um Dir Dein Makefile zu erstellen. (WinAVR ist AVR-GCC, und avr-binutils, und avr-libc, und avrdude, und AVR-GDB, und zu allem noch Doku, und und und...)
Es wäre auch nett wenn der Webmaster dieser Site seinen Lesern einen Gefallen tun würde und die alten AVRfreaks Links unter "AVR-GCC Installation" und "AVR-GCC FAQ und Beispiele" entfernen würde.
Hi, ok vielen Dank für deine Antwort. Ich habe mir jetzt WinAvr runtergeladen und installiert und dann erst mal einen kleinen Test ausgeführt, also ein kleines Programm geschrieben und auf meine Atmega8 geschrieben mit PonyProg. Der Blankcheck hat auch gleich an der ersten Stelle etwas gefunden, also perfekt. Doch jetzt habe ich ein anderes Problem: Der Compiler schreibt immer, dass die 4433def.inc fehlerhaft ist! Ich habe auch schon die 4433def.inc auf dem Tutorial hier auf der Seite runtergeladen, doch genau da passiert der Fehler! Was soll ich tun? Oder ist das gar nicht die richtige Datei für meine AVR? Danke von Ferdi
Hi, ok jetzt habe ich das ganze mit der io.h Datei gemacht und es klappt! Aber ich habe den folgenden Code genommen: #include <io.h> int main(void) { outp(0xff, DDRB); //Port B = Output outp(0x00, DDRD); //Port D = Input for(;;) //loop { sbi (PORTB, 2); } } für meinen ATmega8 Doch jetzt ist nur der PB0 und der PB1 auf -5, aber auch nur wenn der ISP angeschlossen ist! Wie kann das denn sein? Ferdi P.S. Sry ich fange grad erst an :)
Erstmal paar Bemerkungen: > #include <io.h> Sollte jetzt #include <avr/io.h> sein. > outp(0xff, DDRB); DDRB = 0xff; schreiben. > sbi (PORTB, 2); PORTB |= _BV(2); Was die -5 sein sollen, ist mir nicht klar. -5 V, woher kommen die denn? Oder sollten das 0 V sein? Alle Port B Pins auf Ausgabe zu setzen, während noch ein Programmer angeklemmt ist, kann übrigens eine ziemlich schlechte Idee sein.
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.