Servus Leute!
Vielleicht kann mir jemand bei meinem Problem helfen, ich verzweifel
grad so ein bisschen und steh wahrscheinlich 3mm vor der Lösung...wie
immer eben;)
Also folgendes, versuche gerade verschiedenste µC´s im Pollin-
Evaluationsboard V2.01 per ISP anzusprechen, aber AVRStudio bringt immer
nur "ISP_mode Error"...
Der Dragon an sich dürfte ok sein, denn auf der Onboardarea lassen sich
die entsprechenden µC´s (aktuell mega 16/16pu) auslesen.
ISP-Verbindungsleitung ist ein selbstgebauter 6Pol/10Pol-Adapter, der
meiner Ansicht nach doch ok sein dürfte; folgendermaßen aufgelegt:
6Pol: 10Pol:
Pin
1 Miso 9
2 +5V 2 (*)
3 SCK 7
4 Mosi 1
5 Reset 5
6 GND 10
Alle Leitungen sind wie oben beschrieben verbunden über ca 20cm
Flachleitung
(*)wobei die 5V-Versorgung nicht verbunden ist, da ja das Pollin Board
auch an Spannung liegt.
Habe alle Leitungen vom Dragon bis direkt an den Mega16 ohmisch
durchgeprüft, alle Verbindungen sind ok.
Pegelmessung an Mega16-Pins im Ruhezustand (beim Dragon leuchtet nur
grüne LED):
Pin: Messung1: Messung2:
6 2,9V 2,9V
7 2,9V 5,0V
8 0,0V 3,0V
9 5,0V 5,0V (Reset Taster funktioniert)
Messung 1:Dragon an Board verbunden
Messung 2:Board alleine im Betrieb, Dragon nicht verbunden
Wäre super wenn irgendjemand eine Idee hat, weil momentan häng ich
irgendwie total...
Hoffe soweit ausführliche Infos gegeben zu haben.
Gruß, Sven
Sven Wehrfritz schrieb:
> (*)wobei die 5V-Versorgung nicht verbunden ist, da ja das Pollin Board> auch an Spannung liegt.
Warum hast du VTG nicht verbunden?
In der AVR Dragon Online-Hilfe steht nur, dass bei extern versorgtem
Targetboard der Vcc-Header des AVR Dragon nicht verbunden werden soll.
#1 => Introduction
Der Vcc-Header ist was anderes als die VTG-Leitung am ISP-Header.
#1 => Getting Started => Board Description / Headers
Unter #1 => Programming => ISP Description steht sogar explizit:
"Note: AVR Dragon must sense the target voltage at pin 2 on the ISP
header in order to set up the level-converter. For on-board targets, the
voltage must be supplied from pin 2,4,6 on the VCC header (5V) into pin
2 (VTG) on the ISP header. When using off-board targets there should be
no connection between VCC header and pin 2 of the ISP header."
Kurzfassung:
Die VTG (= +5V des Pollin-Boards) müssen zum AVR Dragon gelangen!
BTW:
Du bist bislang der einzige, mit der Fehlermeldung "ISP_mode Error".
http://www.google.de/search?hl=de&source=hp&q=%22ISP_mode+Error%22&btnG=Google-Suche&meta=
Bist du sicher, dass du den exakten Wortlaut der Fehlermeldung
abgeschrieben hast?
#1
http://support.atmel.no/knowledgebase/avrstudiohelp/mergedProjects/AVRDragon/AVRDragon.htm
Hallo Stefan!
Hab ich auch schon probiert, ändert aber seltsamerweise nichts an der
Fehlermeldung.Siehe Anhang
Also ich hab jetzt auf meiner Adapterplatine quasi die beiden Pin2
miteinander verbunden. Ganz dumme Frage, Pollin Board muss schon in
Betrieb sein? (hängt an Netzteil)
Oder soll ich mal das Board spannungslos machen und am Dragon den
VCC-Header an Pin 2 mit auflegen? Oder bin ich da auf dem Holzweg?
Gruß, Sven
Sven Wehrfritz schrieb:
> Hab ich auch schon probiert, ändert aber seltsamerweise nichts an der> Fehlermeldung.Siehe Anhang
Hast du den Hinweis zur ISP-Geschwindigkeit bereits befolgt? Dein
fabrikneuer AVR rennt noch mit 1 MHz, d.h. die ersten
Programmierversuche sind mit max. 250 kHz ISP-Speed zu machen.
> Also ich hab jetzt auf meiner Adapterplatine quasi die beiden Pin2> miteinander verbunden. Ganz dumme Frage, Pollin Board muss schon in> Betrieb sein? (hängt an Netzteil)
Ja. Muss in Betrieb sein, d.h. am Netzteil hängen.
> Oder soll ich mal das Board spannungslos machen und am Dragon den> VCC-Header an Pin 2 mit auflegen? Oder bin ich da auf dem Holzweg?
Nein. Das Pollin-Board ist extern versorgt. Du sollst dem nicht
hintenrum Spannung geben.
So, schon mal schönen Dank erstmal, also Verbindung klappt auf jeden
Fall mal soweit, dass man drauf zugreifen kann, aber:
Muss erstmal dazusagen, dass ich mit AVR´s mehr oder weniger zum ersten
Mal zu tun hat, abgesehen von den Sachen damals aus der Berufsschule, da
hatten wir seinerzeit den 8085 in Assembler programmiert. Von daher
bitte ich zu entschuldigen, wenn ab und zu mal anscheinend "dumme"
Fragen kommen...
Also folgendes, wenn ich jetzt her gehe, und ein einfaches I/O Programm
schreibe in AVRStudio, hier der Quelltext:
^^
.include "m16def.inc"
ldi r16, 0xff
out DDRB, r16
ldi r16, 0x00
out DDRD, r16
loop:
in r16, PIND
out PortB, r16
rjmp loop
^^
und hintennach auf "assemble and run" klicke, tuts, zwar erstmal was,
bringt unten in der Konsole auf keine Fehlermeldung, aber dann kommt ein
Fenster:
1.
"Failed to identify target.would you like to retry with external reset
enabled?"
auf yes geklickt kommt dann:
2.
"failed to identify target.would you like to use SPI to enable the JTAG
interface fuse?to continue, use the ISP cable to attach the target´s SPI
pins"
auf ok geklickt folgt dann
3.
"JTAG interface has been enabled.Reattach the probe to the jtag
connector to continue"
dann wieder auf ok, und dann kommt wieder die erste Meldung usw usw....
Wenn ich das richtig verstanden habe, bist Du über ISP verbunden. Damit
kannst Du nur programmieren, aber nicht debuggen. Nun kenne ich AVR
Studio nicht gut genug, aber ich nehme an, dass es bei "assemble and
run" genau Letzteres tun will.
Es fordert auch ausdrücklich ein Umstecken auf eine JTAG-Verbindung an,
die hast Du aber (noch) nicht. Wenn ich richtig informiert bin, hat das
Pollin-Board einen JTAG-Connector, der 1:1 auf den des Dragon passt.
Probier's mal über den. Natürlich musst Du dafür die JTAGEN-Fuse
gesetzt haben (0), aber das ist ja wohl eben passiert.
(Edit: Tippfeler)
Sven Wehrfritz schrieb:
> Also folgendes, wenn ich jetzt her gehe, und ein einfaches I/O Programm> schreibe in AVRStudio, hier der Quelltext:> ...> und hintennach auf "assemble and run" klicke, tuts, zwar erstmal was,
Es tut erstmal ISP Programmieren, d.h. das übersetzte Programm ins Flash
des AVRs speichern.
> bringt unten in der Konsole auf keine Fehlermeldung, aber dann kommt ein> Fenster:> 1.> "Failed to identify target.would you like to retry with external reset> enabled?">> auf yes geklickt kommt dann:> 2.> "failed to identify target.would you like to use SPI to enable the JTAG> interface fuse?to continue, use the ISP cable to attach the target´s SPI> pins"> auf ok geklickt folgt dann> 3.> "JTAG interface has been enabled.Reattach the probe to the jtag> connector to continue"> dann wieder auf ok, und dann kommt wieder die erste Meldung usw usw....
Das ist Debuggen, der Run-Teil aus deinem Assemble&Run Kommando. Du
versuchst den Programmablauf im AVR nachzuverfolgen.
Weil dein AVR Dragon nicht über einen JTAG Header mit dem AVR
verbunden ist, sondern nur über einen ISP-Header, ist die Meldung "Es
wird nix am oder mit JTAG Interface gefunden" voll in Ordnung.
Vorschlag: Bau dir einen JTAG Adapter z.B. auf die grosse Jumperleiste
am Pollin-Board.
Dankeschön für die Antwort! Kling auf jeden Fall recht plausibel, werd
ich auch später mal ausprobieren.
Nur generell um den µC mit dem oben gelisteten Code zum laufen zu
bekommen hapert es noch ein bisschen....
Also wenn ich mir das jetzt anschau, müsste es doch eigentlich nach
erfolgtem programmieren (Preisfrage: Flash oder EEprom??), wenn an PD2,3
und 4 ein Taster hängt, an PortB ein definierter Pegel stehen, aber ich
mess hier an PB 0-4 und 6 = 1,5V,sowie an PB5 und 7 = 0,5V,
Zur Info, es sind keine Lockbits gesetzt, und Fusebits sind alle nicht
abgehakt, bis auf SPIEN, das hat nen Haken incl. kleinem roten
Fragezeichen in der Checkbox....
Dankeschön ihr beiden, hat geklappt, "hello world" hat funktioniert!
habe den Fehler gefunden, und zwar hab ich auf den Dragon ne neue
Firmware draufgespielt!
Hätt ich auch eher drauf kommen können, aber wie schon gesagt, manchmal
is das ein kleines Ding, das man vergisst und hintennach denkt man sich
einfach "oh mann!!!"
So, jetzt kanns an die Hardware gehen, kommt alles in ein kleines
Alu-Köfferchen rein damit man Sonntag nachmittag weng im Wohnzimmer
spielen kann;)
Wünsch euch noch nen schönen Sonntag Abend!
Viele Grüße, Sven
Eine eigene Frage?
Dieser Thread ist über 17 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.