Hallo Forum... da ich jetzt in C einsteigen muß/möchte, habe ich auch prompt das erste Problem: Was muss ich im Make-File eintragen um einen Attiny2313 zu compilieren ?
Benutze MFile und dessen Menüs, da geht das ganze Spiel wesentlich einfacher, als "zu Fuß"...
Benutze das Tool MFile, dort kannst du den gew. Prozessor einstellen und bekommst ein fertiges Makefile erzeugt.
Guter Tipp. Einziges Problem: Da gibt es keinen Attiny 2313. Hab ich vielleicht ne alte Version ? Laut AVRlibc sollte der 2313 unterstützt werden.
Oh, der fehlt bei mir tatsächlich auch! Möglicherweise "nur" im Menü vergessen worden. Editiere das Makefile mit Deinem Lieblingeditor und suche nach "MCU =" und trage dort MCU = attiny2313 ein. Ich bin mir allerdings nicht sicher, ob das wirklich funktioniert, weil ich nicht sagen kann, weshalb der Tiny2313 nicht in MFile auftaucht. Falls das Kompilat funktioniert, solltest Du Jörg Wunsch mal darauf hinweisen, aber vielleicht liest er es ja selber mit ;-)
Es funktioniert nicht. Das war schon mein erster Versuch. Die Compiler-Ausgabe sagt folgendes: #elif defined (_AVR_ATtiny2313_) # include <avr/iotn2313.h> ...also müsste es ihn geben.
attiny2313 sollte aber laut "avr-gcc --target-help" unterstützt werden: Known MCU names: avr1 avr2 avr3 avr4 avr5 at90s1200 attiny10 attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 at90s2343 attiny22 attiny26 at90s4433 at90s4414 at90s4434 at90s8515 at90s8535 at90c8534 at86rf401 atmega603 atmega103 at43usb320 at43usb355 at76c711 atmega48 atmega8 atmega83 atmega85 atmega88 atmega8515 atmega8535 attiny13 attiny2313 atmega16 atmega161 atmega162 atmega163 atmega168 atmega169 atmega32 atmega323 atmega64 atmega128 at90can128 at94k no emulation specific options.
Das gibts ja nicht... der kann nur mit Kleinschreibung ? ATTiny2313 muß attiny2313 heißen. Kan man die Groß-Klein-Unterscheidnug im Compiler abstellen ? PortD ist nicht gleich PORTD
grmpf NEIN, das kann man NICHT abstellen! C ist nunmal Case-Sensitive. Make ebenfalls...
Sorry, bin halt Anfänger. Mit [WinAVR] Programm wird doch der Code in den Prozessor geschrieben. Das geht bei mir nicht. Folgende Ausgabe: > "make.exe" program avrdude -p attiny2313 -P com1 -c stk500 -U flash:w:main.hex avrdude: stk500_getsync(): not in sync: resp=0x00 make.exe: *** [program] Error 1 > Process Exit Code: 2 Das STK500 hängt am Com1 Und das steht im Makefile: AVRDUDE_PROGRAMMER = stk500 AVRDUDE_PORT = com1 AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) AVRDUDE_FLAGS += $(AVRDUDE_NO_VERIFY) AVRDUDE_FLAGS += $(AVRDUDE_VERBOSE) AVRDUDE_FLAGS += $(AVRDUDE_ERASE_COUNTER)
Gut, aber diese_ Fehlermeldung bedeutet was _vollkommen anderes. Hast Du denn ein STK500, das Du als Programmiergerät benutzt? Die von Dir gepostete Fehlermeldung avrdude: stk500_getsync(): not in sync: resp=0x00 besagt nämlich, daß avrdude (die Flash-Programmiersoftware) sich nicht mit dem Programmiergerät unterhalten kann.
...und hast wahrscheinlich schön fleissig, wie AVRStudio das möchte, die Firmware updated? Dann kannste das erst mal vergessen...
Na, ist ja prima. Braucht noch jemand ein wenig benutztes STK500 ? ...das kann doch nicht sein oder ?
Doch, Atmel hat vor einigen Monaten wohl ein neues Protokoll verabschiedet. Durch das Update kennt das STK500 das alte nicht mehr. Es gibt schon ein paar Hacks, um avrdude wieder mit dem STK500 reden zu löassen, aber das ist wohl alles (AFAIK) noch nicht released. Such einfach mal danach...
Aktuelles Beta für AVRDUDE: http://savannah.nongnu.org/download/avrdude/avrdude-5.0-BETA.tar.gz Eric Weddington wollte auch noch ein Windows-Binary dafür machen.
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.