Forum: Mikrocontroller und Digitale Elektronik STK600 ISP vom Board nutzen


von Rafi D. (alexanderw)


Lesenswert?

Hallo,

ich habe eine fertige Schaltung mit einem ATmega2560 entwickelt und 
würde den gerne auch auf der Platine programmieren. Dazu würde ich gerne 
den ISP von meinem STK600 Board nutzen. Das soll wie folgt aussehen:

1. ISP entsprechende Pins (MISO,MOSI) auf Platine vom µC ausführen und 
per Kabel an den ISP Anschluss am Board anschließen.
2. VTarget Jumper auf dem Board entfernen.
3. Anschließen & Loslegen

Ist mein Gedankengang richtig?

Paar Eckdaten. Platine bzw. µC hat eine 5V Versorgung. 4 MHz Quarz auf 
der Platine am µC angeschlossen. TTL-Pegel.

von Blackbird (Gast)


Lesenswert?

Den blau unterlegten 6pol. ISP-Anschluß verwenden ("ISP/PDI"). "VTARGET" 
bleibt gesteckt.
So verwende ich das ST600 um andere Atmel-Boards zu programmieren.


Blackbird

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Blackbird schrieb:
> Den blau unterlegten 6pol. ISP-Anschluß verwenden ("ISP/PDI"). "VTARGET"
> bleibt gesteckt.

Aber bitte nur, wenn das Target keine eigene Spannungsversorgung hat. 
Ansonsten arbeiten zwei Regler gegeneinander...

Eventuell meckert AVR-Studio, das die falsche Routing-Cards stecken, 
kann man aber ignorieren (solange man keinen ATXmega mit beispielsweise 
5V quält).

von Rafi D. (alexanderw)


Lesenswert?

Muss man da Software technisch irgendwelche Bits und/oder Bytes setzen 
oder irgend etwas anderes beachten?
Das klingt ja ziemlich einfach: den ISP Anschluss an die Platine bzw. µC 
vom Board aus anzuschliessen.

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Alex W. schrieb:
> Muss man da Software technisch irgendwelche Bits und/oder Bytes setzen
> oder irgend etwas anderes beachten?

Nein.

> Das klingt ja ziemlich einfach: den ISP Anschluss an die Platine bzw. µC
> vom Board aus anzuschliessen.

Ist es eigentlich auch. :-)

von Rafi D. (alexanderw)


Lesenswert?

Christoph Budelmann schrieb:
> Aber bitte nur, wenn das Target keine eigene Spannungsversorgung hat.
> Ansonsten arbeiten zwei Regler gegeneinander...

Damit ist gemeint, wenn das STK600 keine Spannungsversorgung hat?

ich hab an Platine und Board die Versorgungsspannung anliegen.

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Alex W. schrieb:
> Christoph Budelmann schrieb:
>> Aber bitte nur, wenn das Target keine eigene Spannungsversorgung hat.
>> Ansonsten arbeiten zwei Regler gegeneinander...
>
> Damit ist gemeint, wenn das STK600 keine Spannungsversorgung hat?

Nein, das STK600 braucht immer seine eigene Spannungsversorgung über USB 
oder die Hohlsteckerbuchse. Es geht nur darum, dass diese 
Spannungsversorgung des STK600 nicht noch auf das Target geht, wenn 
dieses seine eigene Spannungsversorgung hat. Wenn das Target keine 
andere Versorgung hat, kannst du den VTARGET Jumper auch schließen und 
das Target vom STK600 mitversorgen.

von Rafi D. (alexanderw)


Lesenswert?

Habe keinen Zugriff auf meinen µC (Atmega2560) über ISP. Hab mir 
überlegt ob es an dem Reset Pin liegt. Hab auf der Platine ein Max811 
verbaut um von da aus den Controller zu reseten. Den Reset Pin vom ISP 
hab ich direkt auf den RESET Pin vom µC geführt bzw. Reset Pin vom 
Max811.


ISP Reset---------- Reset µC
               |
               ---- Reset Max811

Liegt es an dem Reset?

Übrigens sieht der Fehler so aus:
[ERROR] Failed to enter programming mode. ispEnterProgMode: Error status 
received: Got 0xc0, expected 0x00, ModuleName: TCF (TCF command: 
Device:startSession failed.)

Am STK600 liegt es nicht, der µC darauf funkt einwandfrei.

Was können noch für Gründe sein das der µC nicht angesprochen werden 
kann?

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Alex W. schrieb:
> Liegt es an dem Reset?

Ja.

Der MAX811 hat einen Push-Pull-Ausgang, der gegen den Reset des STK600 
arbeitet. Entweder einen Widerstand dazwischen (Seite 7 des Datenblatts) 
oder den MAX811 rauslassen. Wirklich nötig ist er auch nicht, wenn die 
Brown-Out-Detection des AVR eingeschaltet ist.

von beginner (Gast)


Lesenswert?

Dürfen die benötigten PINs (SCK, MOSI, MISO usw.) beliebig beschalten 
werden? ...sollen ja später mal PORT PINs sein...

von beginner (Gast)


Angehängte Dateien:

Lesenswert?

ich versuche mein Frage noch einmal zu konkretisieren:

Für die ISP brauche ich 6 PINs.

Bei meinem Vorhaben muss am PIN, an dem auch SCK liegt, später ein Kanal 
vom ADC liegen.
D.h. der PIN ist mit einem Spannungsteiler aus Widerstand und 
Fotowiderstand beschalten.
Zur Programmierung würde ich dann zwischen den beiden Widerständen, also 
direkt am PIN das SCK vom ISP Gerät anlegen.
Wird das funktionieren oder gehe ich falsch an die Sache ran?

von beginner (Gast)


Lesenswert?

warum Antwortet keiner?
Ist die Frage so dumm und überflüssig?

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

beginner schrieb:
> Wird das funktionieren oder gehe ich falsch an die Sache ran?

Wenn der Widerstand gegen VCC groß genug ist (>1-10K, je nach 
Programmer) und der Fotowiderstand beim Programmieren nicht gerade 
niederohmig wird, kann es funktionieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.