STK500 als ISP

OP (Firma: Technische Universität Berlin) #2603254
Lesenswert?

Hallo,

ich möchte mein STK500 als ISP nutzen.
Im wesentlichen steht im User Guide auf Seite 51 alles.

Nur funktioniert es nicht. ^^

Wie müssen die SPI-Verbindungen hergestellt werden?
1
STK500 ---> ATmega32
2
-RST   ---> -RST
3
 SCK   --->  SCK
4
 MISO  --->  MISO
5
 
6
 MOSI  --->  MOSI
1
STK500 ---> ATmega32
2
-RST   ---> -RST
3
 SCK   --->  SCK
4
 MISO  \ />  MISO
5
        X
6
 MOSI  / \>  MOSI

Beides habe ich probiert, beides funktioniert leider nicht.
Wenn ich versuche, mit eclipse den µC-Typ auszulesen, was auf dem STK500 
klappt, kommt bei beiden Varianten eine Fehlermeldung.

Vielen Dank
Fabian
Angehängte Dateien:
#2603261
Lesenswert?

So rum

 MISO  --->  MISO
 MOSI  --->  MOSI


Das gedankliche 'Kreuzen' der Datenleitungen ist da bereits eingebaut:

MOSI    Master Out - Slave In
MISO    Master In - Slave Out


Da jeder der Teilnehmer weiß, wer von ihnen Master und wer Slave ist, 
werden die Leitungen einfach durchverbunden. Getreu der Bezeichnung MOSI 
sendet der Master auf MOSI und der Slave hört auf MOSI zu.


Hast du auch eine Spannungsversorgung für dein Nicht-STK500 Board bzw. 
die Masse mit der STK500 Masse verbunden?
OP (Firma: Technische Universität Berlin) #2603282
Lesenswert?

AVR schrieb im Beitrag #2603258:
> Wie sieht es mit Masse aus?
> Wie wird der AVR mit Spannung versorgt?
Durch das STK500!

Uli schrieb:
> Hast Du VCC und GND auch angeschlossen?
Klar! ^^ Hatte ich aber vergessen zu erwähnen. War aber 
selbstverständlich für mich!

Uli schrieb:
> Den VTARGET Jumper entfernt?
Da liegt eines der Fehler! Jetzt lese ich es auch in der Doku!

Karl Heinz Buchegger schrieb:
> So rum
>
>  MISO  --->  MISO
>  MOSI  --->  MOSI
War mein erster Gedanke richtig.

Danke Leute! Melde mich gleich wieder ob es geklappt hat.

Gruß
Fabian
OP (Firma: Technische Universität Berlin) #2603319
Lesenswert?

Hmmm, Jumper ist gezogen, MISO->MISO und MOSI->MOSI gelötet und leider 
entsteht der selbe Fehler.
Die Status-LED leuchtet nicht mehr grün, sondern blinkt Rot-Gelb.

Ich habe die IC-Versorgungsspannung beim STK500 auf 3V eingestellt. Die 
messe ich auch am Vcc des ATmega32. Wenn ich VTARGET ziehe, messe ich da 
nur noch 1V. Ich glaube VTARGET soll auch nicht gezogen werden, da der 
Controller im Moment noch über das 6-Polige Flachbandkabel mit dem 
STK500 versorgt wird.

Welchen Einfluss hat die Quarzbeschaltung am µC? Ich habe da ein 
3,686MHz Quartz dran, mit 12pF Kondensatoren daran. Im Eingeschalteten 
Zustand, kann ich mit dem OSZI aber leider nichts Messen. Obwohl ich die 
Frequenz mit den selben OSZI-Settings messen kann, wenn der µC auf dem 
STK500 steckt. (Der Takt wird dann vom STK500 und nicht von einem Quarz 
geliefert.)

Hat jemand noch eine Idee?

Gruß und Danke
Fabian
Gast #2603344
Lesenswert?

Fabian Hoemcke schrieb:
> Ich glaube VTARGET soll auch nicht gezogen werden, da der
> Controller im Moment noch über das 6-Polige Flachbandkabel mit dem
> STK500 versorgt wird.
Dann muss VTARGET gesetzt sein damit deine externe Schaltung mit über 
das STK500 versorgt wird.

Fabian Hoemcke schrieb:
> Welchen Einfluss hat die Quarzbeschaltung am µC? Ich habe da ein
> 3,686MHz Quartz dran, mit 12pF Kondensatoren daran. Im Eingeschalteten
> Zustand, kann ich mit dem OSZI aber leider nichts Messen. Obwohl ich die
> Frequenz mit den selben OSZI-Settings messen kann, wenn der µC auf dem
> STK500 steckt. (Der Takt wird dann vom STK500 und nicht von einem Quarz
> geliefert.)
Das STK500 kann einen im STK500 eingesteckten µC mit Takt versorgen. 
Diesen externen Takt kannst Du im AVR Studio einstellen. Ist für dich 
jedoch nicht relevant.
Der Quarz am µC in deiner externen Schaltung wird wahrscheinlich nicht 
schwingen, da der µC über seine Fuses noch nicht auf ext. Quarz 
eingestellt wurde. Im Auslieferungszustand verwendet er den internen 
R-C-Oszi als Taktquelle.

Was für eine Fehlermeldung bekommst Du denn?
OP (Firma: Technische Universität Berlin) #2603520
Lesenswert?

Chris schrieb:
> Der Quarz am µC in deiner externen Schaltung wird wahrscheinlich nicht
> schwingen, da der µC über seine Fuses noch nicht auf ext. Quarz
> eingestellt wurde. Im Auslieferungszustand verwendet er den internen
> R-C-Oszi als Taktquelle.
Nein, die Fuses sind so gesetzt, dass der externe Takt genutzt wird.
Merkt man spätestens dann, wenn man den Jumper OSCSEL zieht. ^^

Chris schrieb:
> Was für eine Fehlermeldung bekommst Du denn?
Ich nutze ja eclipse und nicht AVR-Studio. Wenn Du was damit anfangen 
kannst, findest Du es im Anhang.

Uli schrieb:
> Und was hast Du am Target genau angeschlossen?
Da ich nicht genau weiß, was DU damit meinst, habe ich mal ein Bild 
gemacht. Natürlich sonst mit µC. xD

Bitte nehmt mir die Kondensatorenschaltung am XTAL nicht überl. wusste 
es jetzt nicht besser und gleichzeitig Platz schonend.
Was mich dabei interessiert, ist, kann die externe Taktschaltung 
Einfluss auf den ISP haben?

Danke
Fabian
Angehängte Dateien:
OP (Firma: Technische Universität Berlin) #2603548
Lesenswert?

Das ansich glaube ich nicht. Da der µC auf dem Board auch mit dieser 
Frequenz arbeitet.

Wenn das aber abhängig ist vom Takt, kann es also doch das Problem sein, 
dass da nichts schlägt am XTAL, wie oben beschrieben?

Ich werde mal versuchen, die Fuses so zu setzen, dass er doch mit 
internem Takt arbeitet. Um diesen Fehler zu umgehen.
Gast #2603568
Lesenswert?

Fabian Hoemcke schrieb:
> Nein, die Fuses sind so gesetzt, dass der externe Takt genutzt wird.
> Merkt man spätestens dann, wenn man den Jumper OSCSEL zieht. ^^
Der Jumper hat bei einem externen Target keinerlei Funktion. Den kannst 
Du dann setzen wie Du lustig bist.

Fabian Hoemcke schrieb:
> Bitte nehmt mir die Kondensatorenschaltung am XTAL nicht überl. wusste
> es jetzt nicht besser und gleichzeitig Platz schonend.
Das ist weder platzschonend noch zielführend. Baue das mal vernünftig 
auf! Auch auf gute Masseführung achten. Wenn die Fuses tatsächlich 
korrekt auf ext. Quarz eingestellt sind muss der auch schwingen. Das bei 
dir nichts schwingt wundert mich so jedenfalls nicht.

Fabian Hoemcke schrieb:
> Was mich dabei interessiert, ist, kann die externe Taktschaltung
> Einfluss auf den ISP haben?
Die Frequenz des ISP muss weniger als 1/4 der Taktfrequenz des µC haben. 
Da bei dir der Quarz aber nicht schwingt erübrigt sich das zunächst mal.
OP (Firma: Technische Universität Berlin) #2603593
Lesenswert?

Chris schrieb:
> Der Jumper hat bei einem externen Target keinerlei Funktion. Den kannst
> Du dann setzen wie Du lustig bist.
Stimmt. Ich meinte, wenn der µC auf dem Board steckt.

Chris schrieb:
> Das ist weder platzschonend noch zielführend. Baue das mal vernünftig
> auf! Auch auf gute Masseführung achten. Wenn die Fuses tatsächlich
> korrekt auf ext. Quarz eingestellt sind muss der auch schwingen. Das bei
> dir nichts schwingt wundert mich so jedenfalls nicht.
OK. Dabei habe ich mich an die Doku auf Seite 26 gehalten und 
durchgemessen.
Konnte jetzt keinen Fehler finden. Werde es aber überarbeiten.
Wie meine Fusebits gesetzt waren, findest Du im Anhang.

Chris schrieb:
> Die Frequenz des ISP muss weniger als 1/4 der Taktfrequenz des µC haben.
> Da bei dir der Quarz aber nicht schwingt erübrigt sich das zunächst mal.
Habe jetzt erstmal die Fuses auf internen Takt umgestellt und siehe da, 
es geht.

Danke Dir!
Angehängte Dateien:
OP (Firma: Technische Universität Berlin) #2603601
Lesenswert?

Durchgemessen habe ich es und die bedrahtung scheint erstmal zu stimmen. 
Kann nur sein, dass ich die Cs beim Löten gegrillt habe. Werde jetzt 
erstmal bedrahtete kaufen gehen.

Das Datenblatt sagt 12pF - 22pF.
Was ist besser? Oder bleibt sich das gleich?

Gruß
Fabian
OP (Firma: Technische Universität Berlin) #2603912
Lesenswert?

Chris schrieb:
> Fabian Hoemcke schrieb:
>> Das Datenblatt sagt 12pF - 22pF.
>> Was ist besser? Oder bleibt sich das gleich?
>
> Welches DB? Maßgebend ist das DB vom Quarz. Das ist jedoch auch nicht
> allzu kritisch zu sehen. 22pF ist meist ein guter Wert. Viel wichtiger
> ist kurze Leiterbahn und Masseführung. Viel Erfolg!
Das Datenblatt vom ATmega32 das weiter oben im Anhang ist.
Masseführung heißt? Das es mit Masse verbunden ist?
Danke!

Dietrich L. schrieb:
> Und vorher war es wie oben im Bild? Dort steht "Ext. Clock". Ich kenne
> die von Dir verwendete SW zwar nicht, aber ist das nicht ein
> Taktgenerator (und kein Quarz)?
Stimmt, die Einstellung kann zu allgemein sein. Man kann auch genauere 
Einstellungen vornehmen. Jedoch funktioniert der µC so, wenn er den Takt 
vom STK500 bekommt.

Folgende Einstellungen kann ich zum Thema CKSEL machen:
1
Ext. Clock
2
Int. RC OSC. 1 MHz
3
Int. RC OSC. 2 MHz
4
Int. RC OSC. 4 MHz
5
Int. RC OSC. 8 MHz
6
Ext. RC OSC.   - 0.9 MHz
7
Ext. RC OSC. 0.9 MHz - 3.0 MHz
8
Ext. RC OSC. 3.0 MHz - 8.0 MHz
9
Ext. RC OSC. 8.0 MHz - 12.0 MHz
10
Ext. Low-Freq. Crystal
11
Ext. Crytal/Resonator Low Freq.
12
Ext. Crytal/Resonator Medium Freq.
13
Ext. Crytal/Resonator High Freq.

Ich nehme mal an, dass /Ext. Crytal/Resonator Medium Freq./ am besten 
passen würde. So ganz schlau werde ich aber aus dem Datenblatt nicht.
SUT (Start Up Time) lasse ich hier mal außer Betracht erstmal.

Gruß
Fabian
#2604520
Lesenswert?

>Uli schrieb:
>> Ahhh... Versorg das Ding doch mal extern!
>Warum? Was würde das denn am Problem ändern?
JA...!!! Die Speisung ab STK500 ISP reicht in der Regel nicht aus! Warum 
fragst Du hier im Forum um Hilfe, wenn Du die guten  Ratschläge ohnehin 
ignorierst?

Ein weiterer Tip, den Du ignorieren darfst, falls Du nicht weiterkommen 
möchtest: Hast Du im Eclipse "STK500 V2.x" ausgewählt= STK500 V1.x geht 
normalerweise nicht (mehr)
#2604559
Lesenswert?

Peter S. schrieb:
> JA...!!! Die Speisung ab STK500 ISP reicht in der Regel nicht aus! Warum
> fragst Du hier im Forum um Hilfe, wenn Du die guten  Ratschläge ohnehin
> ignorierst?

Peter hat vollkomen Recht! du brauchst nur ein 7805 und paar Kondis mehr 
erst mal nicht, so hast du ein vernünftiges Spanung Versorgung, die ISP 
Schaltung muß genau der STK500 entsprechend (siehe Bild), und der Jumper 
VTARGET must raus.
Angehängte Dateien:
OP (Firma: Technische Universität Berlin) #2604864
Lesenswert?

Peter S. schrieb:
>>Uli schrieb:
>>> Ahhh... Versorg das Ding doch mal extern!
>>Warum? Was würde das denn am Problem ändern?
> JA...!!! Die Speisung ab STK500 ISP reicht in der Regel nicht aus! Warum
> fragst Du hier im Forum um Hilfe, wenn Du die guten  Ratschläge ohnehin
> ignorierst?
Tue ich das?
Chris schrieb:
> [...]
> Dann muss VTARGET gesetzt sein damit deine externe Schaltung mit über
> das STK500 versorgt wird.

> Ein weiterer Tip, den Du ignorieren darfst, falls Du nicht weiterkommen
> möchtest: Hast Du im Eclipse "STK500 V2.x" ausgewählt= STK500 V1.x geht
> normalerweise nicht (mehr)
Danke! Ich nutze bereits V2.x. Denn mit dem STK500 an sich, klappt ja 
das Programmieren.

Danke
Fabian
OP (Firma: Technische Universität Berlin) #2604865
Lesenswert?

Martin e. C. schrieb:
> Peter S. schrieb:
>> JA...!!! Die Speisung ab STK500 ISP reicht in der Regel nicht aus! Warum
>> fragst Du hier im Forum um Hilfe, wenn Du die guten  Ratschläge ohnehin
>> ignorierst?
>
> Peter hat vollkomen Recht! du brauchst nur ein 7805 und paar Kondis mehr
> erst mal nicht, so hast du ein vernünftiges Spanung Versorgung, die ISP
> Schaltung muß genau der STK500 entsprechend (siehe Bild), und der Jumper
> VTARGET must raus.

Gut, dann werde ich das dann erst mal machen.
Warum mein Quarz dann aber nicht schwingt, erklärt es dennoch nicht. 
Leider!

Gruß
Fabian
OP (Firma: Technische Universität Berlin) #2605382
Lesenswert?

Es funktioniert!

Ich habe jetzt ein neues Quarz gekauft[1].
Und nun funktioniert es einfach. :D

Sieht zwar anders aus, als auf der Webseite. Aber es funktioniert.
Daran hat es gelegen.
Jetzt kann ich die Signatur auslesen, Fuses auslesen und das Ding neu 
flashen.
Ich denke, jetzt funktioniert es einfach.

Eine Separate SV habe ich noch nicht geschafft zu bauen.

Vielen vielen Dank
Fabian

________
[1]http://www.conrad.de/ce/de/product/168610/QUARZ-3686400-MHZHC-49US
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren