Hallo Achim,
also ganz langsam von vorn.
Ich habe den prommer AVRISPmg2 und das AVRDtudio 4.17. Diese Teile stecke ich an eine Robotermodell vom Typ Nibo2. Dieser hat den ATmega 128 drauf. Ich kann im Studio ein Programm schreiben und möchte es dann übertragen zum ATmega 128.
soweit klar. Roboter Nibo2 mit ATmega128 wird an den AVRISPmk2 gekabelt
und soll ein neues Programm bekommen. Für die Programmierung verwendest
du das AVRStudio4.17. Soweit alles richtig.
Der Roboter scheint
dieser hier zu sein.
Gehe also auf Tool und auf automatische übertragung. Der 128 wird erkannt, es sucht sucht eine Frequenz von 125kHz. Wenn ich dann programm gehe erscheint unten
125kHz ISP ist ab 700kHz CPU-Takt aufwärts ok.
Da verbindet er sich AVR-Studio mit dem ISP-Proogger. Das läuft also.
Den ISP-Progger kann AVRStudio auch einstellen. Auch OK
Entering programming mod ... Failed,
Da kann der Progger wohl keine Kommunikation mit dem Mega128 aufbauen.
Leaving programmimg mod .... ok.
Naja der Ausstieg aus dem Prog-Mode läuft eigentlich immer
Die Übertragung wird abgebrochen.
AVR-Studio konnte also über den Progger nix auf den Mega128 schieben.
Bei Beginn der übertragung geht das Modell auf Programm (siehtman an Hand der lechten LED). Danach wird die programmierung abgerochen und das Modell hat die alte Prögrammierung wieder. Auf einigen Seiten habe ich gelesen, das ein Netzteil(NT) angeschlossen werden muss. Am AVRISP ist kein Anschluss dran.
Hoffe jetzt verstanden.
Jou, alles soweit verstanden.
Also der AVRISPmk2 hat auch keinen Spannungsanschluß. Seine Spannung
für die PC-Seite holt er sich vom USB-Anschluß und für die Seite des µC
(Treiber für die IS-Schnittstelle, Spannungsmessung des Zielsystems, ...)
braucht er vom Zielsystem. Also von deinem Roboter. Du mußt, wenn
überhaupt, das Netzteil also am Roboter anschließen. Es kommt anscheinend
ab und zu mal vor das man nicht proggen kann weil die Spannung beim
Zielsystem nicht ausreicht.
Was aber wichtiger ist ... die ISP-Anschlüsse (SCK, MISO(PDO), MOSI(PDI),
RESET) auch vom ISP-Progger bedient werden können und keine andere
Hardware dazwischenfunkt. Sind die Anschlüsse bei dem Robo evtl noch
mit anderer Hardware beschaltet ? Evtl irgendwelche Jumper die man für
die Programmierung entfernen muß um Hardware abzutrennen die auf den
Pins liegt ? Sowas in der Art könnte ich mir im Moment vorstellen.
Ich hab mir mal den
Schaltplan gezogen und angesehen.
Also auf PDI/PDO hängt noch LED_R0/1 drauf und die sind mit 150 Ohm
Vorwiderstand. Die LEDs werden zwar über T29 (LED_RG_PWM) an und
abgeschaltet aber wenn da was nicht sauber funktioniert dann blockieren
dir die relativ kleinen vorwiderstände evtl den Programmierablauf. Außerdem
sind in den Leitungen vom Mega128 und in denen vom ISP-Anschluß noch
51 Ohm Widerstände drin. Das ist meiner Meinung nach alles ein wenig
"suboptimal" gelöst. Also es könnte an falschen Spannnugsverhältnissen
liegen die durch ein Netzteil am Roboter gelöst werden könnten.
Die gehen bei der Programmierung aber wie immer ziemlich komische Wege.
Von hinten durch die Brust ins Auge. Warum nehmen die nich einfach die
Buttons vom AVR-Studio ? (Die ICs in der Symbolleiste) . Das mit dem
"Con" ist für die Einstellungen was für einen Progger man hat und mit dem
"AVR" drauf hat man volle Programmer-Gewalt und den totalen Überblick
über die Optionen. Das nehme ich immer
So ... nun hoffe ich das der ganze Text dir irgendwie bei deinem Problem
weiterhilft
EDIT: So wie ich das sehe wird der Mega128 als Zentralorgan zuerst mit
einem Programm versehen. Wenn man da dann das richtige reinpackt kann
man über ihn auch den Mega88 für die Sensoren programmieren. Dafür muß
der Mega128 aber als Progger arbeiten. Das ist das, was mir so im Schaltplan
aufgefallen ist weil ich den ISP-Anschluß vom Mega88 gesucht hab.
Gruß
Dino