Forum: Mikrocontroller und Digitale Elektronik AVR ISP Schaltung


von Christian (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe euch mal eine ISP Schaltung aus nem Buch eingescannt.
Ich waage es zu behaupten, dass die Schrott ist.
Was meint ihr dazu.
Das mit dem Widerling und Vcc gefällt mir garnicht.
Und praktisch geht die schaltung auch nicht.

von Fabian K. (fabian_k)


Lesenswert?

Sieh mal hier:
http://www.kreatives-chaos.com/images/36.png
Vcc gehört eig. ohne Widerstand auf das 5V-Potenzial.

von holger (Gast)


Lesenswert?

>Sieh mal hier:
>http://www.kreatives-chaos.com/images/36.png

Und die Idioten von dort haben wie die Idioten
von Franzis AREF mal wieder an VCC angeschlossen.
Kein Wunder das dieser Unsinn so weit verbreitet ist.

von Christian (Gast)


Lesenswert?

Das Franzis Lernding kann man sowieso vergessen.
RS 232 mit internen Oszilator **kopfschüttel**
Das ist eine absolute Fehlkonstrunktion ...

von Holger S. (holger_s30)


Lesenswert?

Solange der ADC nicht verwendet wird sollte die AREF-Beschaltung keine 
Rolle spielen oder sehe ich das falsch selbst mit unbeschalteten AVCC 
funktioniert der Mikrocontroller mit Einschränkungen.

"AVCC is the supply voltage pin for the A/D Converter, Port C (3..0), 
and ADC (7..6). It should be
externally connected to VCC, even if the ADC is not used. If the ADC is 
used, it should be connected
to VCC through a low-pass filter. Note that Port C (5..4) use digital 
supply voltage, VCC.", Zitat aus dem Datenblatt des Atmega88 (Seite 6).

Genauso wie :"AREF is the analog reference pin for the A/D Converter."

Das mit dem R vor VCC ist auch für mich nicht verständlich, zu mal es 
eine Grundbeschaltung darstellt. Liegt aber auch daran das auf dem 
geposteten Schematic RESET mit an VCC hängt.

holger schrieb:
> von Franzis AREF mal wieder an VCC angeschlossen.
> Kein Wunder das dieser Unsinn so weit verbreitet ist.

an +5V != VCC

Christian schrieb:
> RS 232 mit internen Oszilator **kopfschüttel**
> Das ist eine absolute Fehlkonstrunktion ...

Kostenfrage! Bis zu bestimmten Bd-Raten lässt sich das vertreten.

von Karl H. (kbuchegg)


Lesenswert?

Holger S. schrieb:
> Solange der ADC nicht verwendet wird sollte die AREF-Beschaltung keine
> Rolle spielen

Solange der ADC nicht verwendet wird, ist es die beste Option, den Pin 
einfach in Ruhe zu lassen. Wenn der ADC aber verwendet wird, dann ist 
diese Beschaltung so ziemlich die ungünstigste, die man sich vorstellen 
kann.

> oder sehe ich das falsch selbst mit unbeschalteten AVCC
> funktioniert der Mikrocontroller mit Einschränkungen.

AVcc != ARef

AVcc muss beschaltet werden.
AVcc ist auch gleichzeitig die Spannungsversorgung für den Port. Selbst 
dann, wenn die Portpins als ganz normale digitale Pins benutzt werden.

> Kostenfrage! Bis zu bestimmten Bd-Raten lässt sich das vertreten.

Die Baudrate spielt da keine Rolle. 5% Abweichung sind 5% Abweichung. 
Egal bei welcher Baudrate. Aber die internen RC-Kreise driften mit der 
Temperatur.

von Holger S. (holger_s30)


Lesenswert?

Karl Heinz Buchegger schrieb:
> AVcc muss beschaltet werden.
> AVcc ist auch gleichzeitig die Spannungsversorgung für den Port. Selbst
> dann, wenn die Portpins als ganz normale digitale Pins benutzt werden.

siehe Zitat im vorherigem Post. Deswegen hab ich "mit Einschränkungen" 
geschrieben.

Karl Heinz Buchegger schrieb:
> Die Baudrate spielt da keine Rolle. 5% Abweichung sind 5% Abweichung.
> Egal bei welcher Baudrate. Aber die internen RC-Kreise driften mit der
> Temperatur.

Die Aussage war auf Casual-Requirements ( Raumtemperatur je nach Def. 
von 15-30°C) bezogen. Für Industrie und Automotiv Sachen geb ich die 
vollkommen recht. Für meine "0815"-Debug Interfaces (mit max 9600) hat 
es immer gereicht und das auch ohne Fehlerkorrektur bzw. 
Erkennungsverfahren.
Aber als Grundaussage gebe ich dir recht.

von Andreas (Gast)


Lesenswert?

Holger S. schrieb:
> Solange der ADC nicht verwendet wird sollte die AREF-Beschaltung keine
> Rolle spielen oder sehe ich das falsch selbst mit unbeschalteten AVCC
> funktioniert der Mikrocontroller mit Einschränkungen.

Das stimmt, leider sind diese "Einschränkungen" aber nirgendwo 
dokumentiert. Vermutlich aus gutem Grund. Bei einem ATmega644p z.B. 
funktioniert die zweite UART-Schnittstelle nicht, wenn man AVCC 
unbeschaltet lässt. Das habe ich mal zufällig herausgefunden, als mir 
die entsprechende Leitung auf einem Steckbrett herausgeflutscht war.
Wer weiß, welche Komponenten sonst noch nicht, oder nur halb, 
funktionieren, wenn man AVCC weglässt. Oder wie sich ein ATmega64 oder 
irgendein anderes Modell verhält.
Deswegen ist es grundsätzlich eine blöde Idee, AVCC wegzulassen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Karl Heinz Buchegger schrieb:
> Die Baudrate spielt da keine Rolle. 5% Abweichung sind 5% Abweichung.
> Egal bei welcher Baudrate.

Indirekt spielen sie eine Rolle, weil die 1 MHz (oder 8 MHz), auf die
der RC-Oszillator voreigestellt ist, einen "krummen" Vorteilerwert
für die UART verursachen, mit dem sich die höheren PC-typischen
Baudraten nicht mehr (sinnvoll) erzeugen lassen.

> Aber die internen RC-Kreise driften mit der
> Temperatur.

Kann man bei einem ATmega88 mit einigermaßen konstanter Betriebs-
spannung und dem Temperaturbereich von 25 °C ± 5 K, wie man ihn
gemeinhin in Büro- und Laborumgebungen vorfindet, vernachlässigen.
Entgegen anderslautenden Gerüchten funktioniert der RC-Oszillator
für eine RS-232 allemal stabil genug.  (Bei den älteren AVRs, also
ATmega8, ATmega128 und dergleichen, gab es noch einen anderen
Aufbau des RC-Oszillators, der war da deutlich empfindsamer.)

Wenn FTDI es schafft, ohne Quarz die für Fullspeed-USB notwendige
Frequenzgenauigkeit von ± 0,25 % zu erreichen (FT232R), warum sollte
es dann ein AVR nicht schaffen, die popeligen ± 2 % für RS-232
hinzubekommen?  Ja, ich weiß, das Datenblatt garantiert diese
Abgleichgenauigkeit nicht, aber Datenblattwerte halten die Hersteller
vorsätzlich sehr konservativ, weil erstens der Chiptest teuer ist
und zweitens, solange die Kunden den IC kaufen, es keine Grund gibt,
ihnen bessere Werte zuzugestehen, die ja dann "einklagbar" sind.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Andreas schrieb:
> Das stimmt, leider sind diese "Einschränkungen" aber nirgendwo
> dokumentiert.

Die "Einschränkung" besteht darin, dass dir der Controller vom
Weglassen von AVcc sogar kaputt gehen darf.  Der Pin muss
beschaltet werden, denn wie sonst will man die Datenblattforderung
einhalten, dass die Spannung an diesem Pin zwischen Vcc - 0,3 V und
Vcc + 0,3 V liegt?

von Hubert G. (hubertg)


Lesenswert?

Das AVCC weglassen wurde auch dadurch gefördert, das es eine Serie 
ATmega8 gab bei denen VCC und AVCC intern verbunden waren.
Ab der Fertigungskennung 1025 und bei den ATmega8A ist diese Verbindung 
nicht mehr vorhanden.
Da wird es noch manche böse Überraschung geben wenn mal der Kontroller 
getauscht wird.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Hubert G. schrieb:
> Das AVCC weglassen wurde auch dadurch gefördert, das es eine Serie
> ATmega8 gab bei denen VCC und AVCC intern verbunden waren.

Hast du dafür irgendwelche Belege?

Dass die Leitungen intern "irgendwie" verbunden sind, halte ich
für möglich, aber eine feste Leitung zwischen beiden wäre ja komplett
widersinnig.

von Walter (Gast)


Lesenswert?

Holger S. schrieb:
> Das mit dem R vor VCC ist auch für mich nicht verständlich, zu mal es
> eine Grundbeschaltung darstellt. Liegt aber auch daran das auf dem
> geposteten Schematic RESET mit an VCC hängt.

Die Schaltung ist interessant. Wenn der ISP am RESET zieht fließen 1mA 
auf den 5V über R1 und der CHIP wird nur über die AVCC versorgt. Wenn 
AVCC/AREF und VCC verbunden sind, sollte der ISP direkt das Zeitliche 
segnen oder aber der CHIP wird mit der Versorgung an AVCC programmiert. 
Kann man den CHIP nur mit AVCC programmieren???


---

von Hubert G. (hubertg)


Lesenswert?

Jörg Wunsch schrieb:
> Hubert G. schrieb:
>> Das AVCC weglassen wurde auch dadurch gefördert, das es eine Serie
>> ATmega8 gab bei denen VCC und AVCC intern verbunden waren.
>
> Hast du dafür irgendwelche Belege?
>
> Dass die Leitungen intern "irgendwie" verbunden sind, halte ich
> für möglich, aber eine feste Leitung zwischen beiden wäre ja komplett
> widersinnig.

Ich habe mehrere ATmega8-16PU Serie 0931, bei denen kann man zwischen 
VCC und AVCC einen Widerstand von etwa 7 Ohm messen.
Mehrere ATmega8-16PU Serie 1025, meßbarer Widerstand im MOhm Bereich.

Hier eine relativ neue Schaltung bei der AREF, AVCC und AGND nicht 
belegt ist. Die Schaltung funktioniert angeblich einwandfrei, obwohl 
PortC verwendet wird.:
http://www.roehrenkramladen.de/MAS1_2/MASV12.htm

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Hubert G. schrieb:
> Ich habe mehrere ATmega8-16PU Serie 0931, bei denen kann man zwischen
> VCC und AVCC einen Widerstand von etwa 7 Ohm messen.

Genau, das meinte ich mit "irgendwie" verbunden.  Wie sich diese
Verbindung verhält, wenn dein Ohmmeter mit einer anderen Spannung
misst, oder wie sie sich verhält, wenn Vcc anliegt, ist was ganz
anderes.  Ich bin mir relativ sicher, dass da nicht einfach ein
Widerstand von 7 Ω drin ist. ;-)

> Mehrere ATmega8-16PU Serie 1025, meßbarer Widerstand im MOhm Bereich.

Ist das die gleiche Chip-Revision?  Kann man aus den Zahlen auf der
Rückseite sehen.  U. U. ist es ja nur ein anderer Produktionsprozess,
der dazu führt, dass die vermeintliche Verbindung sich nun ganz
anders verhält.

Die 0931 oder 1025 ist keine "Serie", sondern nur der Herstellungs-
zeitraum: 31. Woche 2009 bzw. 25. Woche 2010.

von Hubert G. (hubertg)


Lesenswert?

Das da nicht einfach ein Widerstand eingebaut ist, ist mir schon klar.
Wenn man an VCC 5V anlegt, dann hat man die 5V auch am AVCC. Man kann an 
AVCC einen 1k Widerstand gegen GND schalten ohne das sich die Spannung 
ändert.
Bei den neueren misst man an AVCC nur 4,33V und mit dem Widerstand nach 
GND nur mehr 0V.

So unbekannt dürfte diese Eigenart aber nicht sein, da mich Peter 
Dannegger im Zuge dieses Threads danach gefragt hat:
Beitrag "ATmega8A Hoher Stromverbrauch nach Reset"

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Welche chip revisions sind's denn nun?  Es gibt da auf der Rückseite
eine 5- oder 6-stellige Nummer, die ersten Ziffern sind meist 35,
der letzte Buchstabe ist dann die Revision.

von Hubert G. (hubertg)


Lesenswert?

Mit Verbindung VCC - AVCC
35569H
1-P0931

Ohne Verbindung VCC - AVCC
35469L
1-P1025

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Also H und L.  Da sind ja einige Maskensätze dazwischen ...
Vielleicht war das ja früher wirklich ein Bug, dass Vcc und AVcc
zu schlecht entkoppelt waren.

Die Errata-Liste im Datenblatt sagt allerdings nichts aus, was sich
zwischen den Revisions (und warum) geändert hat.  Schade.  Bei
vielen anderen AVRs sind die Errata pro chip revision aufgeführt.

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.