Forum: Mikrocontroller und Digitale Elektronik vcc bei AVR ISP MKII trennen?


von Michael N. (pinstripe)


Lesenswert?

Hallo Forengemeinde,

ich habe nach langem Selbststudium einen AVR ISP MKII erworben und 
möchte damit nun (zunächst) einen ATtiny13 und später ATmega8 flashen.
Jedoch habe ich noch eine kleine Frage, die ich nicht 100%ig klären 
konnte und Angst habe meinen AVR ISP oder gar meinen Computer zu 
beschädigen.

Laut dieser Quelle: 
http://www.mikrocontroller.net/articles/AVR_In_System_Programmer#ISP
und dieser Quelle: 
http://conelek.org/images/4/4e/Mc-avr_min_isp_aw_schaltung_1000s.jpg

wird der pin2 des Wannensteckers am Programmer mit vcc (z.B. +5V) 
verbunden.

Laut dieser Quelle allerdings: 
http://s-huehn.de/elektronik/avr-prog/avr-prog.htm (bitte etwa 30% 
scrollen bis zum ersten Schaltplan) bleibt der vcc-Anschluss ungenutzt.

Nun meine Frage: Was stimmt ?

- Wird der vcc-Pin des Programmers nur mit dem vcc-Pin des 
Mikrocontrollers verbunden und auf keinen Fall mit einer weiteren 
5V-Spannungsquelle? (also würde der Programmer die Spannung für den 
Mikrocontr. während des Flashens liefern) oder
- Wird der vcc-Pin des Programmers mit dem vcc-Pin des Mikrocontrollers 
verbunden und ZUSÄTZLICH mit einer weiteren 5V-Spannungsquelle? oder
- Wird der vcc-Pin der Programmers nirgends angeschlossen und nur der 
vcc-Pin des Mikrocontrollers an eine externe Spannungsquelle?

Oder sind mehrere Möglichkeiten möglich?

Vielen Dank für eine Antwort im Voraus! Ich würde es ungern einfach 
ausprobieren, daher frage ich lieber... Grüße, pinstripe

von Eumel (Gast)


Lesenswert?

"also würde der Programmer die Spannung für den
Mikrocontr. während des Flashens liefern"

Nein, die Verbindung ist dafür da, dass der Programmer sich auf das 
Spannungslevel der Schaltung einstellen kann. Es müssen ja nicht 5V 
sein. Das AVR ISPMKII versorgt die Schaltung NICHT mit Strom.

von Eumel (Gast)


Lesenswert?

Nachtrag: Du musst die Schaltung also irgendwie selbst mit Strom 
versorgen. Woher der kommt ist egal, halt nicht mehr als 5V. Aber das 
weißt du schon ;)

von ich (Gast)


Lesenswert?

Michael N. schrieb:
> nach langem Selbststudium

weist Du bestimmt, dass der mkII keine Targetschaltung versorgen kann. 
Das muss also eine externe Spannungsquelle übernehmen.

von Michael N. (pinstripe)


Lesenswert?

Also werden vcc des Programmers UND vcc des Mikrocontrollers GEMEINSAM 
an eine externe Spannungsquelle angeschlossen. Vielen Dank!

ich schrieb:
> weist Du bestimmt, dass der mkII keine Targetschaltung versorgen kann.
> Das muss also eine externe Spannungsquelle übernehmen.

Also ist es auch nicht möglich einen Mikrocontroller alleine zu flashen, 
der in keiner Schaltung verbaut ist, sondern einfach nur am Programmer 
angeschlossen ist? Hätte gemeint, das einmal gesehen zu haben, doch habe 
ich mich warscheinlich getäuscht.

Vielen Dank für eure schnellen Antworten!

von Eumel (Gast)


Lesenswert?

Michael N. schrieb:
> Also ist es auch nicht möglich einen Mikrocontroller alleine zu flashen,
> der in keiner Schaltung verbaut ist, sondern einfach nur am Programmer
> angeschlossen ist? Hätte gemeint, das einmal gesehen zu haben, doch habe
> ich mich warscheinlich getäuscht.

Mit dem AVR ISPMKII nicht. Mit Nachbauten eventuell schon.

von Karl Käfer (Gast)


Lesenswert?

Hallo Michael,

Michael N. schrieb:
> Also ist es auch nicht möglich einen Mikrocontroller alleine zu flashen,
> der in keiner Schaltung verbaut ist, sondern einfach nur am Programmer
> angeschlossen ist? Hätte gemeint, das einmal gesehen zu haben, doch habe
> ich mich warscheinlich getäuscht.

Das hängt vom Programmer ab. Zum Beispiel der mySmartUSB light von myAVR 
kann den Controller auch mit Spannung versorgen.

HTH,
K.

von Michael N. (pinstripe)


Lesenswert?

Danke für eure Hilfe!

Ich möchte gerade das erste Programm auf meinen ATtiny13 schieben. Es 
ist folgender code:
1
#include <avr/io.h>
2
#define F_CPU 1200000UL  // 1,2 MHz
3
#include <util/delay.h>
4
5
int main(void)
6
{
7
  DDRB = 16;           
8
       
9
   while (1) {
10
       PORTB = 0; _delay_ms(1000);
11
12
       PORTB = 16; _delay_ms(1000);
13
   }
14
  
15
   return(0);
16
}
von dieser Seite: 
http://www.sachsendreier.com/msw/projekte/blinksdings/blinksdings.html

Habe die .hex Datei mit AVR-Studio6 rüber geschoben, ohne dass es zu 
einer Fehlermeldung kommt. Mit dem Multimeter messe ich am 
enstprechenden Ausgang auch tatsächlich eine periodisch 
ein/ausschaltende Spannung, jedoch blink die daran angeschlossene LED 
nicht, egal wie klein der Vorwiderstand ist. (LED ist nicht falsch 
gepolt eingesetzt) Als wäre dort ein enorm hochohmiger Widerstand 
dazwischen ???

Außerdem ist die Spannung am Ausgang auch nur vorhanden wenn der AVR ISP 
MKII angeschlossen ist.

EDIT: Ich betreibe und flashe die Schaltung mit einer Spannung von 3,4 
Volt.

Wie kann das sein? Ich weiß, dass solch bescheuerte Anfängerfragen 
anstrengend sind, jedoch konnte ich mit Google und Forumsuche keine 
Lösung finden. Danke schonmal im Vorraus!

von Oliver J. (skriptkiddy)


Lesenswert?

Michael N. schrieb:
> (LED ist nicht falsch
> gepolt eingesetzt)
Glaube ich nicht.


PS über Bitmanipulation wird die ganze Sache sauber:
1
#include <avr/io.h>
2
#define F_CPU 1200000UL  // 1,2 MHz
3
#include <util/delay.h>
4
5
#define LED PB4
6
7
int main(void)
8
{
9
  DDRB |= (1 << LED);           
10
       
11
   while (1) {
12
       PORTB &= ~(1 << LED); _delay_ms(1000);
13
14
       PORTB |=  (1 << LED); _delay_ms(1000);
15
   }
16
  
17
   return(0);
18
}

Gruß Oliver

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Eine weisse LED braucht ca. 3 Volt, damit sie leuchtet, eine rote ca. 
1,5. Für eine rote mit 10mA wäre also R = 2/0,01 = 200 Ohm richtig, für 
eine weisse sinds gerade mal 0,4/0,01 = 40 Ohm.
Wenn das nicht hilft, ist die LED putt. Du kannst sie ja mal direkt an 
Vcc und GND anschliessen mit dem Vorwiderstand, dann muss sie ja 
leuchten. Übrigens sind bei allen LEDs die Chips auf dem Minusanschluss 
(nur Blink LEDs sind da anders). Wenn du von der Seite reinguckst, der 
breite Träger auf dem der Chip sitzt, ist also Minus.

von Herr M. (herrmueller)


Angehängte Dateien:

Lesenswert?

Michael N. schrieb:
> Also ist es auch nicht möglich einen Mikrocontroller alleine zu flashen,
> der in keiner Schaltung verbaut ist, sondern einfach nur am Programmer
> angeschlossen ist? Hätte gemeint, das einmal gesehen zu haben, doch habe
> ich mich warscheinlich getäuscht.



Man braucht ja keine Schaltung, nur eine Betriebsspannung < 5V

Das mach ich einfach mit einem Li-Accu.

Gruss

HerrMueller

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ich hab mir ein kleines Adapter für die 8-Beiner gebaut, welches als 
Speisung ein altes USB Kabel benutzt. Einen Schalter für Vcc ist da mit 
drauf und noch ein Erweiterungsstecker für etwaige andere Adapter, sowie 
ein Quarzoszillator für external Clock.

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.