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.
>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.
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.
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.
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.
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.
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.
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?
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.
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.
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???
---
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
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.
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"
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.
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.