ISP und Versorgungsspannung

Gast #5428673
Lesenswert?

Hallo,

mit meinem 1. Post oute ich mich direkt als Anfänger, aber ich habe eine 
Frage:

Ich habe eine Schaltung entworfen, die mit einem AtMega328P ein 
WS2812b-LED-Strip steuert. Im Betrieb wird das ganze über eine externe 
Stromquelle mit Spannung versorgt (bis zu 1A), soweit so gut.
Jetzt zu meiner Frage, wenn ich den uC neu programmieren will über ISP 
(Arduino as ISP / USBASP kommt noch), wie verhindere ich, dass der 
Arduino-Programmer/USBASP durch die Last des LED-Stips überlastet wird, 
da ja die +5V und GND jeweils verbunden sind. Wie löst man soetwas 
geschickt? Meine Ideen waren:
- Externe Spannung angeschlossen lassen
- Schalter um Strip zu trennen
- Diode zwischen +5V vom ISP+uC und externe Spannung+LED

Bin über jede Hilfe dankbar.

Vielen Dank für eure Hilfe,
Jan
Gast #5428677
Lesenswert?

Wenn Du jetzt nur eine Platine hast, die Du ggf. öfter programmieren 
willst, dann ist ein schalter, ein Jumper oder einfach eine 
Steckverbindung, mit der Du die Last vorrübergehend trennen kannst, 
eigentlich ausreichend.

Wenn Du mehrere dieser Platinen machen willst - oder täglich daran 
arbeiten willst, dann würde ich eine Diode einsetzen.
Gast #5428775
Lesenswert?

Alternativ verbindest du den VCC-Pin vom ISP-Anschluss nicht. Dann 
kannst du die Schaltung aber auch nicht ohne externe 
Spannungsversorgung programmieren.

Und manche Programmiergeräte brauchen den Anschluss - der ist eigentlich 
soweit ich weiß allerdings gar nicht dafür gedacht, den Controller beim 
Programmieren zu versorgen, sondern dafür, dass das Programmiergerät die 
in der Schaltung verwendete Betriebsspannung erkennen und die korrekten 
Logikpegel setzen kann. Auch wenn 99% der Leute ihn anders verwendet.

MfG, Arno
Gast #5428893
Lesenswert?

Ein sauberer AVR-Programmer versorgt das Target gar nicht, sondern nutzt 
die Spannung des Targets zur Einstellung der Pegel oder (z.B. AVRISP 
ohne mkII) zur eigenen Versorgung.

Am besten kaufst Du also einen Programmer, bei der man die Versorgung 
des Targets zumindest abschalten kann.
#5428936
Lesenswert?

Der Unterschied zwischen Programmier-mode und Run-Mode ist der Reset 
Pin. Der Reset ist Low im Reset, sonst high.

Im Reset sind die Ports auf Tristate. Waehrend dieser Zeit muessen 
irgendwelche Peripherie Circuits natuerlich sicher sein. Also hoechst 
wahrscheinlich deaktiviert. Daher muss man die Pegel wo noetig per 
externer Widerstaende auf Low oder high vorgeben. Das sind dann die 
Pegel, die waehrend des Resets anliegen.

Steht aber alles im Datenblatt.
#5428939
Lesenswert?

Habt ihr nen Tipp für nen guten (günstigen) Programmer? Habe den usbasp 
bei aliexpress bestellt. Falls jemand eine gute Idee für einen Anfänger 
hat,gerne.

Danke,
Jan

PS: die Pins zum programmieren sind nicht doppelt belegt. Hab nur Angst, 
dass die Lasten an +5 zuviel sind während ich den Programmer anschließe.
#5428958
Lesenswert?

Wie schon gesagt, irgendwelche Lasten sollten im Reset abgeschaltet 
sein. Denn du weisst ja nicht wie lange der Reset dauert. Wenn das Ganze 
dann abfackelt ...
Der Reset dauert solange bis ein sinnvolles funktionierendes Programm 
aufgespielt ist. Zwar ist der Reset pin nicht zwingend low, aber 
unprogrammiert sind die Ports zB Tristate, oder etwas anderes.

Sinnvollerweise entkoppelt man die Signalpins mit 100 Ohm in Serie. Und 
der Speisepin auf dem ISP sollte kurzschlussgeschuetzt sein. Resp, die 
Speisung des Programmers sollte kurzschlussgeschuetzt  sein.
#5429340
Lesenswert?

Jan schrieb:
> Wie löst man soetwas
> geschickt? Meine Ideen waren:
> - Externe Spannung angeschlossen lassen
> - Schalter um Strip zu trennen
> - Diode zwischen +5V vom ISP+uC und externe Spannung+LED

Hallo,
am Anfang habe ich immer eine Diode gelötet. Später habe ich kapiert, 
daß das nicht unbedingt notwendig ist, wenn man DIAMEX ALL 
AVR-Programmer USB-ISP benutzt: dort gibt es zwar Option, Schaltung von 
Programmer zu speisen, aber das ist eine Option, d.h. man kann sie 
abschalten.

Normalerweise lasse ich 5 Volt-Pin in ISP frei.

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