PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Arduino Mega2560 will nicht mit Bascom bzw. Xtreme Burner - Wie ISP beschalten ??



da_miez3
29.12.2012, 14:45
Grüßt euch!

Habe mir vor kurzem in der Bucht einen Arduino Mega Clone gekauft. Nach Treiberinstallation konnte ich auch mit der Arduino Software programmieren. Was ich nicht wusste ist, dass die Arduino boards anscheinend mit einer JAVA Art programmiert werden. Da alle meine Codes aber unter Bascom geschrieben sind, möchte ich mich da jetzt auch nicht umorientieren...

So, zum Problem :) :

Auf der Platine ist der ICSP Anschluss der Laut Datenblatt und Messung wie folgt belegt ist :

24141


Mit beiden Varianten bringt Extreme Burner die Meldung: PowerOn Failed, Cannot Communicate with Target Chip.

Mit dem RNControl Board und dem Atmega32 gehts ohne Probleme außer in Bascom bei der Einstellung USBasp, da geht beides nicht.
Komme jetzt irgendwie nicht mehr weiter...

Hat jemand ne Idee, wie die Richtige Beschaltung zum Programmieren für den Atmega2560 ist?

Danke schonmal :)

- - - Aktualisiert - - -

Jetzt funktionierts.... Hab ewig mit mir gerungen ob ich den Beitrag verfassen soll. Funktioniert jetzt mit Variante 1 obwohl ich öfter gelesen habe, dass ab Atmega128 die Beschaltung anders sein soll. Hatte zwei Kabel vertauscht. Zum glück ist er nicht kaputtgegangen.

- - - Aktualisiert - - -

Aber wenn noch jemand eine Idee hat, wie ich den USB Anschluss zum programmieren benutzten kann würde ich mich auch sehr freun. Habe einen Beitrag dazu gefunden, aber kann leider nix damit anfangen. Auf dem Board ist nämlich kein FTDI Chip verbaut, sondern auch ein Atmel direkt nach der USB Buchse. Vielleicht hat ja jemand einen Link für mich ;)

Hubert.G
29.12.2012, 20:42
Solange du nur *.hex Files laden willst, geht das recht gut:
www.xloader.russemotto.com

oderlachs
30.12.2012, 11:00
Welchen Brenner hast Du benutzt um ISP zu benutzen ??
Im web sollte es für "Arduino" Anleitungen wie Heu geben...Ich würde mal Google nach : ArduinoMega ISP befragen.
Zur Not melde Dich noch mal bei mir PN.

Gerhard

da_miez3
30.12.2012, 11:23
also irgendwie klappts jetzt doch nicht.. nachdem ich die isp beschaltung wie bei jedem anderen rnboard, bzw kleinerem atmega gemacht habe erkennt er den atmega2560, flasht ihn und sagt alles ok. kann auch das hexfile wieder auslesen. aber das programm funktioniert nicht. als brenner benutze ich seit nem jahr extreme burner.
irgendwann hat bascom nur nur noch müll auf den controller gebrannt aber warum weiß ich nicht. dachte dann erst es wär der programmer aber mit extreme burner gings dann wieder perfekt.

naja, beim code hab ich mich an ein einfaches beispiel mit blinkender led genommen. nach dieser pinmap: http://arduino.cc/en/uploads/Hacking/PinMap2560.png

mein code ist dieser:

$regfile = "m2560def.dat" 'Die Anweisung bestimmt Controllertyp
$framesize = 32 'Stackanweisungen, die eigentlich nur bei größeren Programmen
$swstack = 32 'wirklich nötig werden
$hwstack = 32
$crystal = 16000000 'Die Frequenz des verwendeten Quarzes



Config Pinb.7 = Output 'Ein Pin wird als Ausgang konfiguriert, hier eben der 13er Digitalport vom Arduino
Led Alias Portb.7

do
Led = 1 'Pin wird auf High, also 5V geschaltet
Waitms 500
Led = 0 'Pin wird auf Low, also 0V geschaltet
Waitms 500
loop


und eigentlich sollte die led auf dem board jetzt doch blinken. hab auch schon nen anderen pin genommen und nachgemessen. tut sich aber nix.. weiß im moment wieder nicht weiter :(


grüße

oderlachs
30.12.2012, 11:42
Has Du Dir vorher das Pinmapping vom ArduMega angesehen, von wegen der Pinbezeichnungen und Boardanschlüssen ? Ich werde mal heute abend das Mega rausholen um mal nacn zuvolleziehen was Du da vor hast, momentar kämpfe ich noch mit der USART programmierung und da möchte ich nicht zwischenfunken und was anderes auf den Tisch bringen.. Ich werde das mal probieren OK ?? ich habe ja auch bascom/stk500/USBasp usw.. zum Testen...

1.Resultat: Es geht auch nicht: Bascom > STK500 > ISP6 > AduinoMega2560

2.Nachtrag:

Nachdem ich mir mit dem vielen Hin und Her den Bootsloader zerschossen hatte. Musste ich auch erst mal herrausfinden wie ich den da wieder drauf bekomme . Wie immer war ich gewohnt die Chips auf einem Pollin AVR Eval. Board über ISP und USBAsp programmer, neue Chips mit Bootsloader zu versehen. Den Mega2560 konnte ich ja nicht "umstecken" also USB ASP per 6pol. ISP leitung ans Board gesteckt... Arduion IDE und BL brennen ....geht nicht (???)
USB Asp durch USBtinyISP v.3 ersetzt..BL gebrannt, ewig lange gedauert aber es geht, obwohl die Arduino IDE Fehler anzeigt..(??)
Nun ist es möglich ,in Bascom mittels STK500 und ISP Verbindung zum MegaBoard auch den ChipTyp eindeutig zu identifizieren.
will ich nun ein Program drauf brennen, kommt in Bascom die Fehler meldung, dass der Chip nicht dem ausgewählten in der Signatur entspricht und Feierabend, der Chip läst sich nicht mehr identifizieren wie schon oben erwähnt...
Also wieder Bootsloader per USBTinyISP drauf gebrannt und Chip ist ion Bascom zu identifizieren...
Es gab auch probleme mit dem USB ASP in Bascom algemein, nur wollte ich nicht noch das parall. Kabel einziehen um das STK200 zu nutzen..auszuprobieren.

Es wäre wirklich ratsam diesen Artikel in der Arduino Rubrik zu behandeln, es werden bestimmt auch mehrere User sein die ihre bascom Programmierung nicht in Arduino Sprache umschreiben möchten...
Zum anderen , warum lässt sich ein Arduino nicht per ISP programmieren ??
Ich werden heute noch ein Arduino Board mit einem "jungfräulichen" Chip bestücken und sehen was dann ist. Selbst im Arduino Cookbook habe ich nix darüber gefunden...Wie man einen Arduino als ISP Programmer für andere Verwendet ist 100tausendfach über all beschrieben..aber anders herrum.. na ich werde Suchen. Ein interessantes Problem für mich.Dann werde ich noch mittels 2 Arduino versuchen ob das geht..na mal sehen...

Nachtrag 3:

HIER (http://www.ladyada.net/make/boarduino/use.html)sollte man sich belesen und besonders diesen Abschnitt : Arduino-compatibility

Nachtrag 3: HIER (http://arduino.cc/en/Hacking/Programmer?from=Main.Programmer) ist noch ein link, mir ist es leider da "zu englisch" kann das nicht alles deuten

5Volt-Junkie
30.12.2012, 15:53
War da nicht irgendwas mit Fuße-Bits? Je nach dem ob mit Bootloader oder nicht, werden unterschiedliche Fuses gesetzt. Bin mir da nicht sicher, aber könnte es ein Einfluss drauf haben?

oderlachs
30.12.2012, 20:11
Ja 5 Volt, Du hast Recht, es sind die Fuses...
Nur bin ich noch nicht dahinter gestiegen welche da gesetzt werden müssen oder nicht. Mein STK500 hat heute "geglüht", mein Kopf auch ;) Manchmal sind die Fehlermeldungen zum Verzweifeln, doch ist es interessant diese Thema mal aufzunehmen und zu klären, was, wie und warum usw....
Fast in allen Beschreibungen geht man davon aus die Ardus per USB/Serial und ArduinoIDE zu programmieren...Komisch ist nur das das schreiben eines neuen Bootloaders einfach geht das andere wieder nicht....
Ich werde mal versuchen einen Ardu-Chip auf dem STK einfach auszulesen... wenns geht, natürlich nur.
Nun ja wir haben tüchtig Regenwetter..== Zeit fürs Hobby.. ;)

Gerhard

5Volt-Junkie
30.12.2012, 20:42
ich habe mich damals auch total rumgequält den Bootloader drauf zu bekommen. Über zweiten Arduino - fehlgeschlagen, meinen Programmer in die Arduino GUI einbinden hat zwar geklappt, und soweit ich mich erinnern kann, konnte ich auch den Bootloader auf den ATmega übertragen aber es lief nicht.
Am Ende hat es (irgendwie) über AVR Studio geklappt.
Ich kann zwar die damalige Anleitung im Netz nicht mehr finden, aber ich meine, mit dieser (http://letsmakerobots.com/node/28002) Vorgehensweise hat's geklappt.


@oderlachs: das wäre mal eine coole Sache, wenn Du da den Durchblick bekommst und es evtl. in unserem Wiki beschreiben könntest.;)