Forum: Mikrocontroller und Digitale Elektronik Pinbelegung ISP


von Redegle (Gast)


Lesenswert?

Hi,

ich hätte eine Frage zu der Pinbelegung der ISP-Schnittstelle.

Ich möchte einen Atmega 2560 programmieren.

Wenn ich nach ISP suche finde ich eine Schnittstelle, nach der ich MISO, 
SCK, RST, VTG, MOSI und GND anschließen muss.

Sehe ich das richtig:

1. Ich kann MISO, MOSI und SCK zum Programmieren und als PortB benutzen, 
wenn ich den Ausgang zur Schaltung hochohmig genug gestalte.
2. RST = Reset
3. VTG muss ich nur zum Controller führen, wenn dieser mittels 
Programmierschnittstelle mit Spannung versorgt werden soll.



Ich würde gerne ein STK600 zum Programmieren verwenden. Sollte ich 
irgendeine Art galvanische Trennung oder Widerstände zwischen Board und 
Controllerschaltung verbauen?

von Stefan B. (Gast)


Lesenswert?

1. Sehe ich auch so. Da gibt es aber eine Appnote von Atmel dazu. Siehe 
Artikel AVR In System Programmer im Abschnitt "6 ISP-Pins am AVR 
auch für andere Zwecke nutzen"

2. Ja

3. Sehe ich anders. Meistens liefert das Targetboard über VTG Spannung 
an den angeschlossenen Programmer. Genaueres im Datenblatt/Schaltplan 
deines Programmers.

von Redegle (Gast)


Lesenswert?

Zu 3. Ich habe gerade etwas gefunden:

Text:

Select the device to be programmed in the same way as programming a 
device on STK600. The VCC of the target application is detected by 
STK600 and signals are converted into voltage levels suitable for the 
target system.

Note: If the other application has its own power supply, the VTARGET 
jumper must be removed before connecting STK600 to the other 
application. STK600 may be damaged if the VTARGET jumper is not removed.

....................................................

Heißt also es geht beides.
Werde aber keine Gefahr laufen mein Board durch eine unschöne externe 
Spannung zu zerstören.


Was währe noch zur Sicherheit gegen Überspannung, kurzschluss etc zu 
sagen?

von Gastino G. (gastino)


Lesenswert?

Redegle schrieb:
> Was währe noch zur Sicherheit gegen Überspannung, kurzschluss etc zu
> sagen?

Wenn Du ganz sicher gehen willst, dann kannst Du die ISP-Schnittstelle 
optisch entkoppeln. Habe ich so gemacht. Allerdings macht da das STK 600 
Probleme (ich bin nicht sicher, mit welchen Pegeln das arbeitet, ich 
habe die Schnittstelle auf 5 V ausgelegt). Mit einem 
Bausatz-ISP-Programmer (USBasp) geht das aber problemlos. Bei optischer 
Entkopplung musst Du darauf achten, dass das Programmiergerät auch eine 
Versorgungsspannung für einen Optokoppler liefern kann und die 
Pegelanpassung bzw. die Beschaltung der Optokoppler passt.

von Stefan B. (Gast)


Lesenswert?

Deshalb hatte ich geschrieben "Genaueres im Datenblatt/Schaltplan
deines Programmers."

Du musst genau darauf achten, welche Hardware du angeschlossen hast.

Fall 1: Es gibt kein Targetboard. Der µC wird auf dem Programmer 
(STK600) programmiert. Trivialer Fall.

Fall 2:
Das angeschlossene Targetboard kann vom Programmer aus mit Spannung 
versorgt werden. D.h. die Stromaufnahme des Targetboards liegt innerhalb 
der Spezifikation dessen, was der Programmer extern abgeben kann. Und 
die Targetboardbeschaltung (z.B. Spannungsregler) kommt mit dem Strom 
"aus dem Hintereingang" zurecht. Wenn diese Voraussetzungen erfüllt 
sind, kann man die interne Spannungsquelle des STK600 auf die VTG 
Leitung des ISP schalten. Dazu dient der gesteckte Jumper. 
Überspannung/Kurzschluss auf dem Targetboard bedrohen in diesem Fall 
zusätzlich zum Targetboard die Spannungsvorsorgung des STK600. Daran 
denken: Targetboard und STK600 nach dem Programmieren und vor dem Testen 
trennen!

Fall 3:
Das angeschlossene Targetboard muss selbstversorgt sein. ZB. weil die 
Voraussetzungen von Fall 2 nicht erfüllt sind. Dann liegen auf dem VTG 
Pin der ISP-Leitung die stabilisierte µC-taugliche Versorgungsspannung 
des µC auf dem externen Board. Die muss den elektrischen Spezifikationen 
des µCs (=> Datenblatt) entsprechen. Tut sie das, sollte dieser Fall für 
das STK600 kein Problem hinsichtlich Überspannung/Kurzschluss 
darstellen. Der STK600 wertet die Spannung dann aus, um seine 
Pegelwandler richtig einzustellen. Wenn Fall 3 gilt, darf man nicht die 
interne Spannungsquelle des STK600 auf die VTG Leitung des ISP schalten. 
Zwei Spannungsquellen würden gegeneinander arbeiten. Dazu dient der 
abgezogene Jumper. Das Targetboard kann nach dem Programmieren beim 
Testen angeschlossen bleiben. Wenn allerdings die Schaltung noch 
Überspannungen/Kurzschlusse produzieren kann, würde ich STK600 und 
Targetboard sicherheitshalber trennen.

Fall 3 ist bei externen Targetboards der häufigere Fall. Pauschal Fall 2 
anzunehmen, ist ohne Kenntnis der Targetboardschaltung gewagt.

Ganz sicher ist der Tipp von Gastino.

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.