PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C-Programm auf ATMEGA2560 übertrgan?



C-Mon
15.03.2007, 13:34
Hallo Leute,

Ich habe Probleme bei der Übertragung meines compilierten C-Programms.
Geschrieben wurde es im AVR-Studio und beim copmilieren sind keine Fehler aufgetreten. Nun wollte ich das entstandene hex-File mit einem Standard ISP Kabel übertragen, welches angeblich STK200/300 kompatibel ist. Ich arbeite mit der aktuellsten AVR-Studio Version (4.13) bei welcher jedoch nur STK500 oder AVR ISP zur verfügung steht. Ist mein Standart ISP Kabel mit dieser Version kompatibel? Es kommt nämlich immer die Meldung dass keine Verbindung zum Controller hergestellt werden kann.

Habe auch bereits PonyProg und AVRDUDE heruntergeladen, aber keines dieser Programme unterstützt den ATMEGA 2560!

Wo liegt das Problem? Brauche ich für diesen Controller ein anderes Programmierkabel oder habe ich evtl. eine falsche Einstellung vorgenommen.

Vielen Dank für eure Hilfe!

MFG, C-Mon.

robo junior
15.03.2007, 13:46
Hallo

Ich hab auch den ATMega2560 (RN Modul) und das ISP Kabel von Robotikhardware. Allerdings benutze ich WinAVR (avrdude zum übertragen) (WinAVR: 20070101 und avrdude: 5.3.1)
Bei mir wird der ATMega2560 unterstützt. Man muss zwar den Controller selbst ins Makefile schreiben (mit mfile geht es nicht). Aber ich kann das Programm dann übertragen.

C-Mon
17.03.2007, 15:51
Vielen Dank für die Antwort, bin ein ganzes Stück weitergekommen, hatte jedoch bei der Übertragung zum Controller immer noch ein Problem.

Mein Vorgehen:
Ich habe im Editor eine Programmdatei main.c geschrieben und mit der anschliessenden Zeile in der Dos-Prompt compiliert.

avr-gcc -c -g -O3 -Wall -Wstrict-prototypes -mmcu=atmega2560 main.c -o main.o

Anschliessend gelinkt:

avr-gcc main.o -Map=main.map,--cref -mmcu=atmega2560 -o main.elf

Dann die elf-Datei ins Intel-Hexformat umgewandelt:

avr-copy -O ihex main.elf main.rom

Und zum Schluss mit AVRDUDE übertragen:

avrdude -p m2560 -c stk200 -U flash:w:main.rom

--> Dann kam folgende Fehlermeldung:
avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Mit -F hat er zumindest in der Prompt die 3 Schritte ausgeführt, aber nichts auf den Käfer geladen. Unter anderem war auch eine Meldung darunter: Invalid device signature.

Du hast gesagt du trägst den Controller manuell im Make-File ein. Wenn ich jedoch vorgehe wie oben beschrieben, dann benötige ich gar nie ein Make-File. Wie ist deine Vorgehensweise?

Könnte ich auch das gesamte Projekt im AVR-Studio entwerfen, welches mir direkt ein Make-File liefert und dieses anschliessend in WinAVR verwenden?

Wäre es allenfalls möglich, dass du ein Make-File von dir posten könntest, damit ich sehe welche Einträge alles notwendig sind?

Vielen Dank! Gruss

Killroy
21.03.2007, 10:53
Hallo

Ich hab auch den ATMega2560 (RN Modul) und das ISP Kabel von Robotikhardware. Allerdings benutze ich WinAVR (avrdude zum übertragen) (WinAVR: 20070101 und avrdude: 5.3.1)
Bei mir wird der ATMega2560 unterstützt. Man muss zwar den Controller selbst ins Makefile schreiben (mit mfile geht es nicht). Aber ich kann das Programm dann übertragen.

habe ebenfalls einen atmega2560- verwende jedoch usb (myavr-programmer)-aber jetzt mal egal.

was meinst du damit, den controller selbst ins makefile schreiben .. ? - heißt das du nimmst das makefile eines anderen unterstützen controllers ( z.B 1280) und schreibst dann den mcu-namen um ?!

wäre echt dankbar um eine kurze anleitung.... würde mir sehr viel wertvolle zeit sparen !!

danke im voraus,
killroy

jar
22.03.2007, 14:24
habe dieselben Probleme, aber warum weiter Fehler suchen, es geht mit , Pony2000 wunderbar

in AVR Studio4.13 das gcc entwerfen, compilieren und linken und den pony2000 anwerfen, hex laden und prommen, fertig

Killroy
24.03.2007, 21:43
und was verwendest du für einstellungen bei ponyprog ?
-denn egal was ich einstelle, kann einfach nicht zum controller connecten...
(verwende übrigens den myavr-smart usb programmer)

jar
25.03.2007, 19:39
und was verwendest du für einstellungen bei ponyprog ?


avr ISP I/O
am selbstgebauten Adapter mit 74HC244 an LPT1: H&378 , StandardSPP Mode im Bios, GiveIO DLL installiert

http://iapf.physik.tu-berlin.de/jbohs/dforum/atmel_timer/ISP_ST200.jpg

Killroy
26.03.2007, 06:48
danke erstmal für die anleitung, ....

das problem ist nur dass mir mein laptop leider keinen lpt port zu verfügung stellt, und ich somit usb verwenden muss !!
dh. ich brauch die einstellungen für den myavr-smartusb-programmer..... ?!

C-Mon
28.03.2007, 18:08
Hallo jar

Habe es ausprobiert, so wie du gesagt hast, aber leider ohne Erfolg.
Hexfile in WinAVR geschrieben und in PonyProg geöffnet. Dann kommt aber bereits meine erste Frage, welches Device hast du ausgewählt? Wie du gesagt hast verwendest du ebenfalls den Atmega2560, welcher jedoch nicht in der Liste vorhanden ist. Unter AVR micro sind ein paar Atmegas zu finden, jedoch nicht der 2560. Mit AVR Auto funktionierts leider auch nicht. Ich konnte lediglich mit SPI eeprom->25256 daten vom Device laden, beim übertragen kommt jedoch eine Fehlermeldung -> Device not responding.

Also wie und wo kann ich mein Device auswählen und korrekt einstellen.
Verwende die aktuellste Version von PonyProg2000.

Gruss C-Mon

jar
28.03.2007, 22:21
Habe es ausprobiert, so wie du gesagt hast, aber leider ohne Erfolg.
Hexfile in WinAVR geschrieben und in PonyProg geöffnet. Dann kommt aber bereits meine erste Frage, welches Device hast du ausgewählt? Wie du gesagt hast verwendest du ebenfalls den Atmega2560, welcher jedoch nicht in der Liste vorhanden ist. Unter AVR micro sind ein paar Atmegas zu finden, jedoch nicht der 2560. Mit AVR Auto funktionierts leider auch nicht. Ich konnte lediglich mit SPI eeprom->25256 daten vom Device laden, beim übertragen kommt jedoch eine Fehlermeldung -> Device not responding.
Also wie und wo kann ich mein Device auswählen und korrekt einstellen.
Verwende die aktuellste Version von PonyProg2000.
Gruss C-Mon

jetzt wird es schwer....

ich nutze den parallel Prommer, siehe Plan, am LPT1:

dort kann ich meinen mega32 wählen und prommen, aber auch auto hat eben funktioniert

mit dem seriell prommer ST500 nachbeu meckert pony, habe eben nachgelesen das der immer OK sagt wenn nur die RTS CTS usw. Brücken drin sind, mein Nachbau hat entweder ein Treiber Problem oder ist einfach nur falsch, ich werde noch mal verschiedene SW probieren

am Pony gibt es das Problem der seriellen Bitfriemelei, besser wär natürlich echt Datenübertragung aus dem AVR Studio, ich dachte das geht seriell in Pony, nach ersten Tests sah es ja gut aus .....

witzig, mein LPT funktioniert einwandfrei, aber wehe ich klicke auf Test, da kommt die Meldung funzt nicht ?!, aber prommen geht...

den Pony muss ich nicht wirklich verstehen, aber immerhin ist er eine schnelle Lösung für das Henne Ei Problem, aber am USB will ich zusätzlich fürs Notebook einen seriellen, HW, Gehäuse usw. steht ja schon muss nur eine funzende Atmel SW Kombi finden , aber im Netzgibt es ja viele Lösungen, aber da die HW mit dem AT90s2313 steht würde ich ungerne eine neue aufbauen mit mega8535, wie ich aber lesen durfte gibt es viele Verbesserungen auch im 2313, Blockmode, schnelle Übertragung auch per USB_seriell, das ist was feines, ob ich mir ergenzend noch den high voltage antue weiss ich nicht, finde 15V anbauen nicht so spannend, gibt aber nette dc/dc converter, die 12V werden ja keine gigaA brauchen

jar
03.04.2007, 15:31
so , Update

habe nun extra für das Notebook (und USB -> rs232c Adapter) den ST500 komp. nachgebaut

http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html

Optimiert und beschleunigt für die Verwendung mit USB -> seriell Wandler !
Neue Software V3.8b jetzt mit verbessertem Fuse- und Lockbit Support, Support für avrdude-5.1 Controller

klappt am desk schon mal prima, direkt aus dem AVR
mit Tools -> AVR prog...
am USB / rs232 Adapter mit 8MHz Quarz und 38400 Bd als Com4: eingestellt, nicht vergessen den ASM
Source auf Quarz und Bd Rate zu modifizieren, assemblieren, brennen und übertragen mit simple ST200 LPT: Selbstbau im Pony oder mit externen Prommer

http://iapf.physik.tu-berlin.de/jbohs/dforum/atmel_timer/v2.38_AVR910-schalt%5b2%5d.jpg


so nun kann ich auch am läppi mobil proggen :)
power hole ich mir aus einem USB +5V Selbstbaukabel aufs portable Steckbrett.

C-Mon
05.04.2007, 19:44
Das Standart ISP Programmierkabel funktioniert sehr schlecht mit den neuen
Controllern. Hatte genug vom ewigen Rumgebastel und den versuchen von verschiedenen Programmen. Habe mir deshalb den AVRISP mkII Programmer von Atmel gekauft. Das Teil kostet zwar etwas über 90 Euro, ist aber Gold wert. Kann nun meinen Controller konfortabel direkt vom AVR-Studio programmieren, prommen, Fuse-Bits usw. auslesen, funktioniert alles wunderbar.

jar
05.04.2007, 20:02
Habe mir deshalb den AVRISP mkII Programmer von Atmel gekauft. Das Teil kostet zwar etwas über 90 Euro, ist aber Gold wert.

http://www.microcontroller-starterkits.de/index.html?avr.htm

ab 37 Euro , wie kommst du auf 90 ?

C-Mon
10.04.2007, 15:00
Sorry, mein Fehler!

Komme aus der Schweiz und habe das Teil wegen Zoll- und Portokosten in der Schweiz erworben. Habe hier 100 Schweizerfranken bezahlt. Zu dem habe ich den Preis falsch umgerechnet, sollte eigentlich 60Euro stehen. Aber nach deinem Link ist der Preis in Deutschland sogar fast halb so teuer. Die Zoll und Lieferkosten in die Schweiz sind relativ hoch, trotz dem bin ich gerade ein wenig baff dass ihr das Teil so günstig bekommt. Naja, gekauft ist gekauft! ](*,)