Hallo!
Nachdem vor einiger Zeit mein erster Versuch, mich mit Microcontrollern
zu beschäftigen, scheiterte, will ich jetzt einen zweiten Anlauf wagen!
Ich habe mir das Buch samt Platine von Roland Walter zugelegt, außerdem
den (Original) AVRISP mkII. Mein Problem damals war, den AVRISP am
Vista-PC zum Laufen zu bekommen. Inzwischen verwende ich Windows 7 und
der Programmer läuft soweit. Zumindest bin ich sowohl im AVR Studio als
auch in Bascom in der Lage, die Signatur korrekt auszulesen.
Mein Problem: Wenn ich ein beliebiges Listing (z.B. von der Buch-CD)
nehme und in den ATMega8 schreiben will, sieht das auch erstmal so aus,
als würde es laufen. Allerdings hat der ATMega danach keine Funktion.
Soll also z.B. mit 'nem Taster eine LED ein- und ausgeschaltet werden
(ich glaube Listing 0202 oder 0203 von der Buch-CD), dann passiert
einfach gar nix! Steckbrücken sind alle korrekt gesteckt, zigmal
kontrolliert...
Eine Fehlermeldung beim Programmieren erhalte ich nicht. Die eine LED am
AVRISP leuchtet grün, die andere während des Brennvorgangs orange (ist
so ein flackern...), sonst ist sie auch grün. Ein Reset der Testplatine
(also Netzteil ab und wieder dran) bringt auch nix. Ach ja, das Board
ist der Bausatz von Segor, also nix mit ggf. wackeligem
Breadboard-Aufbau...
Bei meinen "alten" Versuchen seinerzeit ist es mir einmal mit einem
alten, geliehenen PC und dem SP12-Programmer gelungen, ein Listing (oben
beschriebenes) in den Controller zu bekommen. Als ich die Platine also
jetzt erstmalig anschloss, konnte ich mit dem Taster die LED ein- und
ausschalten. Nach einem Versuch, ein anderes Prg in den Controller zu
brennen, geht das nicht mehr. Also hat er zumindest das alte Prg
gelöscht.
Ich gehe mal davon aus, dass die Fuse-Bits richtig stehen, ich kann sie
ja auslesen (mit AVR-Studio und mit Bascom), das stimmt mit der
Beschreibung im Buch überein.
Hat jemand eine Idee, warum meine Programme nicht wollen???
Gruß, Jörg
Bist Du sicher, dass Du das richtige .hex file einprogrammierst?
Es ist eine für Anfänger oft wirksame Falle, dass die Bediensoftware des
Programmiergeräts irgend ein Vorgänger-file überträgt anstelle des
aktuellen. Oder nach einer Fehlermeldung gar kein .hex-file bekommen
hat.
Manchmal ist es auch ganz schön schwierig, das betreffende .hex-file dem
Bedienprogramm des mkII mitzuteilen, insbesonders wenn es sich nicht in
dem üblicherweise von Studio4 benutzten Ordner oder Laufwerk befindet.
Hallo Peter,
hmm, da bin ich mir nicht so sicher -- ehrlich gesagt wusste ich nicht
mal, dass es da Schwierigkeiten geben kann. Ich arbeite ja mit dem
Brenndialog von Bascom und dachte, dass Bascom dann auch automatisch DAS
File übergibt, das gerade compiliert worden ist. Gibt's denn in Bascom
noch irgendwas einzustellen, bzgl Pfaden o.ä. wo sich evtl ein Fehler
eingeschlichen haben kann?
Klar könnte ich in Bascom auch ein externes Brennprogramm angeben. Aber
einersteits möchte ich es -- gerade im Anfang, bei den kleinen Listings,
wo man ja alle drei Min. neu brennt -- erstmal einfach halten. Ein
Mausklick -- fertig.
Andererseits dachte ich, dass ich mit einem "Dritt-Programm" (externe
Brennroutine) auch eine zusätzliche potentielle Fehlerquelle einbaue...
Gruß, Jörg
Hmm, Frage am Rande: Kann das Problem sein, dass ich die 6-polige
Leitung zwischen AVRISP und Platine mit ATmega8 nicht getrennt habe?
Kann der Programmer AUswirkungen auf den Prozessor haben? Habe sowas
jetzt an anderer Stelle im WWW gelesen...
Gruß, Jörg
Wenn die drei Datenleitungen des Target auf Eingang gestellt sind, wie
im üblichen reset-Zustand, hat der Programmer keinen Einfluss auf das
Target.
Wenn aber im Programm des Target diese Leitungen auf Ausgang
programmiert werden, stößt Ausgang (ISP) auf Ausgang (target-Leitungen)
und das kann natürlich Kurzschlüsse ergeben.
Wenn also die Leitungen des ISP im Programm des Target als Ausgänge
benutzt werden, müsste der ISP-Stecker gezogen werden.
Was das Programmierproblem angeht: Ein screenshot des Brenndialogs und
der Ausführungsmeldung (done) wäre beim Rätseln sehr hilfreich.
Target: der zu programmierende Kontroller
Hallo Peter,
zunächst vielen Dank für deine Hilfe -- ich konnte das Problem lösen!
Die Tatsache, das der AVRISP mkII angeschlossen war, war nicht die
Ursache. Die Kommunikation zwischen Bascom und Programmer bzw weiter zum
Target klappt ja ebenfalls.
Der Fehler saß vor dem Computer...
Ich wage gar nicht, es zu sagen (schreiben): Wenn man zunächst
compiliert und dann programmiert, funktionierts auch (schäm).
Ich bin immer davon ausgegangen, der Button "Program Chip (F4)" brennt
nicht nur sondern compiliert auch vorher. Aber da hatte ich wohl zuviel
"Automatisierung" erwartet...
Drauf gekommen bin ich, da unten im Brenndialog stand, dass er das
BIN-File nicht gefunden hat. Weiter gemeckert hat er nicht, und gelöscht
hat er natürlich auch -- daher war mein vorheriges Prg weg.
Jaja, die "blöden" Anfänger... ;-)
Egal! Jetzt funktioniert's und ich kann richtig loslegen!
Nochmal Danke für deine Hilfe!
Gruß, Jörg