Forum: Mikrocontroller und Digitale Elektronik Programm stürzt immer ab


von Gast (Gast)


Lesenswert?

Hallo,

mein ATmega-Programm stürzt immer ab, wenn ich die Spannung am ADC 
ändere. Der Code ist unkritisch, es wird nur AD-gewandelt und dann der 
Wert/4 auf als PWM ausgegeben... Da ich den Watchdog eingeschaltet habe 
startet mein Programm nach 2s neu. Aber woran kann es liegen, dass es 
überhaupt abstürzt?

An Schaltung habe ich nur eine LED an OC0A (PB0) und 4.7k zwischen RESET 
und GND.

von Εrnst B. (ernst)


Lesenswert?

Nun, ich würde darauf tippen, dass dein Programm einen Fehler enthält.
Ohne Quelltext wirds nicht genauer, Glasskugel ist grad beim polieren.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Wie änderst Du die Spannung am ADC?

von Gast (Gast)


Lesenswert?

ich habe ein regelbares Netzteil... mit dem fahre ich zwischen 0V und 5V 
rum... ADC-Referenz ist VCC (5V).

von Hermann U. (Firma: www.pcb-devboards.de) (gera82)


Lesenswert?

ja das könnte mal ein Stack-Problem sein.

von spess53 (Gast)


Lesenswert?

Hi

>mein ATmega-Programm stürzt immer ab, wenn ich die Spannung am ADC
>ändere.

Mein Auto macht im Leerlauf komische Geräusche.

Erwartest du im Ernst auf der Basis deiner Informationen irgendwelche 
Hilfe.

MfG Spess

von Gast (Gast)


Lesenswert?

Ich hab mal die ganzen Verpackungsfunktionen entfernt, übrig bleibt das 
hier:
1
wdt_enable(WDTO_2S);      // Watchdog einstellen
2
3
TCCR0A = (1<<COM0A1) | (1<<WGM01) | (1<<WGM00);
4
TCNT0  = 0;               // PWM-Counter zurücksetzen
5
OCR0A  = 0;               // PWM-Wert auf 0 setzen
6
TCCR0B = (1<<CS01);       // PWM-Frequenz auf 488 Hz setzen
7
8
DDRB  |=   (1 << DDB4)    // PortB Pin4 als Ausgang einstellen
9
         | (1 << DDB0);   // PortB Pin0 als Ausgang einstellen
10
11
DDRB  &=  ~(1 << PB3);    // PortB Pin3 als Eingang einstellen
12
13
ADCSRA =   (1 << ADEN)    // ADC einschalten
14
         | (0 << ADPS2)
15
         | (1 << ADPS1)
16
         | (0 << ADPS0);  // ADC Vorteiler auf 4 einstellen
17
18
while (1)
19
{
20
    OCR0A = adc(3) / 4;   // AD-Wandeln und PWM auf die LED einstellen
21
    wdt_reset();          // Watchdog zurücksetzen
22
}

Die Funktion
1
int adc(char mux)
 ist die aus dem AVR-GCC-Tutorial und funktioniert einwandfrei -- das 
Program lief ja bis heute Mittag auch noch. Jetzt allerdings stürzt es 
ab. Meistens stürzt es sofort ab. In seltenen fällen läuft es einige 
Sekunden.

von Gast (Gast)


Lesenswert?

Interessantes Phänomen: Die LED leuchtet auch, wenn VCC nicht verbunden 
ist. Sie leuchtet dann abhängig von der Spannung an PB3 mehr oder 
weniger hell. Was mache ich falsch?

von Gast (Gast)


Lesenswert?

Dein Controller versorgt sich über die Schutzdioden.
Mach mal einen Vorwiderstand an deinen ADC Eingang

von Gast (Gast)


Lesenswert?

>4.7k zwischen RESET und GND.

Ist nicht dein Ernst oder?

von Gast (Gast)


Lesenswert?

4.7k zwischen RESET und VCC, sorry.

Also ich habe jetzt mal 30k vor dem ADC. Er zieht jetzt keinen Strom 
mehr über diese Leitung sondern nur noch über VCC. Allerdings habe ich 
immernoch das Absturzproblem.

von Gast (Gast)


Lesenswert?

Wenn dein Programm vorher lief und Du nix daran geändert hast, dann kann 
es
sein das Du deinen Controller mit deinem Netzteil gegrillt hast.
evtl mal etwas mehr als AREF draufgegeben...

Manche Netzteile geben beim ausschalten auch eine Spannungsspitze von 
sich.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> das Program lief ja bis heute Mittag auch noch.
Ja, und was hast du dann gemacht?

> Die Funktion ist aus dem AVR-GCC-Tutorial und funktioniert einwandfrei
Du verwendest also einen ATmega169? Im Turorial steht:
1
Ein kleines Beispiel für den "single conversion"-Mode bei einem ATmega169...
Falls nein: wie kommst du darauf, dass die Routine adc() funktioniert?

von Gast (Gast)


Lesenswert?

Also,

ich habe den µC getauscht -- gleiches Phänomen. Der alte war also in 
Ordnung. Aber: ich habe mir die PWM mit dem Oszi angeschaut. Die 
funktioniert wunderbar. Aber: sobald ich die LED einhänge stürzt das 
Programm nach mehr oder weniger kurzer Zeit (wenige Sekunden, oder: 
ADC-Wert ändert sich) ab. Wenn ich die LED nicht dran habe dann 
funktioniert alles.

von Thomas (kosmos)


Lesenswert?

um eine Spannung zw. 0 und 5V auf den ADC zu geben genügt ein einfaches 
Poti z.B. 10 kOhm zw. VCC und GND der Mittelabgriff kommt dann an den 
ADC-Eingang. Ein extra Netzteil hättest du nicht benötigt.

Das Problem mit deiner unsicheren Spannungsquelle solltest du wie folgt 
in den Griff bekommen. In Reihe zur VCC Leitung kommt ein Widerstand und 
von VCC nach GND eine 5,1 oder 5,6V Z-Diode in Sperrrichtung. Wenn die 
Spannung über den Wert der Z-Diode steigt verringert die Z-Diode ihren 
Widerstand wodurch am vorgesetzten Widerstand die Spannung wegen der nun 
größeren Last abfällt.

Kenne die Stromaufnahme deiner Schaltung nicht probiere es aber mal mit 
100 Ohm was du notfalls noch verringern kannst, dann wird die Z-Diode 
aber auch mehr gefordert und könnte bei einer zu hohen Spannung zu heiß 
werden. Also auf die Belastung des Widerstands und der Z-Diode achten.

von Olli R. (omr) Benutzerseite


Lesenswert?

Gast wrote:
> ich habe ein regelbares Netzteil... mit dem fahre ich zwischen 0V und 5V
> rum... ADC-Referenz ist VCC (5V).

An AREF kommt ein 100nF-Kerko, aber nicht VCC.

AREF niemals an VCC anschließen (einzige Ausnahme: die alten
AT90Sxxxx). Abgesehen davon, dass es wenig Sinn macht kann es zu
einem Kurzschluss führen.

Olli

von Gast (Gast)


Lesenswert?

Der ATtiny13 hat keinen AREF-Pin. AREF wird per Register auf VCC 
gesetzt.

Danke für die vielen generellen Hinweise!

Ein Poti einlöten ginge natürlich auch, aber wenn man schon ein 
regelbares Netzteil mit stabilisierten 5V und zwei variablen Ausgängen 
dastehen hat, dann ist es sicher einfacher das zu nutzen, zumal man die 
Spannung  gleich ablesen kann.

Leider weiß ich immernoch nicht, warum die LED mir Probleme macht. Die 
nimmt ja nicht zu viel Strom, oder etwa doch?

von tinman (Gast)


Lesenswert?

@Olli,

wer sagt das Vref nicht an vcc darf?

ADC Characteristics

Symbol  Parameter  Condition  Min Typ Max  Units
AVCC  Analog Supply  Voltage / VCC - 0.3(1) VCC + 0.3 / V
VREF  Reference  Voltage / 2.0 - AVCC / V

also is die Vref max = AVCC die wiederum VCC +0.3 sein kann.

und weiter in der atmel pdf :

The reference voltage for the ADC (VREF) indicates the conversion range 
for the ADC. Single ended channels that exceed VREF will result in codes 
close to 0x3FF. VREF can be selected as either AVCC, internal 2.56V 
reference, or external AREF pin.

...

If the user has a fixed voltage source connected to the AREF pin, the 
user may not use the other reference voltage options in the application, 
as they will be shorted to the external voltage. If no external voltage 
is applied to the AREF pin, the user may switch between AVCC and 2.56V 
as
reference selection.

Also geht doch vref an avcc, allerdings mussman es richtig machen,daher 
ist deine aussage 'niemals' schon falsch.

von Olli R. (omr) Benutzerseite


Lesenswert?

tinman wrote:
> @Olli,
>
> wer sagt das Vref nicht an vcc darf?

Du selbst. Mach Dir mal den Unterschied zwischen VCC und AVCC klar.

Drei Moeglichkeiten: AREF, AVCC, intern.

AREF: Die externe Spannung an Pin AREF wird als Referenz verwendet
AVCC: Besitzt der AVR eine eigene Spannungsversorgung für den ADC, wird 
der Pin AVCC als Referenz gewählt, ansonsten wird VCC verwendet,
mit externen Kondensator am AREF Pin! VCC wird wohl gemerkt intern 
verschaltet, am AREF Pin hat sie aber extern nicht anzuliegen.

Intern: 1,1V und/oder 2,56V, mit oder ohne externem Kondensator an AREF

AREF darf nie mit der Betriebsspannung verbunden werden. Wenn eine 
interne Referenzspannung benutzt wird, dann nur 100n gegen GND, sonst 
wird die interne Spannung gegen VCC kurzgeschlossen.

ATMEGA16, Datenblatt Seite 209.

Olli

von tinman (Gast)


Lesenswert?

Olli,

datenblatt genau durchlesen hilft:

Vref max = avcc, wobei avcc max ist vcc +0.3.

Das bedeutet lediglich das beim vref extern die spannung vcc +0.3 sein 
darf - sogar Atmel selber hat auf deren referenz designs einen 0 ohm 
wiederstand zwischen vcc und vref - aber gut, du muss es besser wissen 
als Atmel :)


Mein komentar bezieht sich auf deine aussage:

AREF niemals an VCC anschließen (einzige Ausnahme: die alten
AT90Sxxxx).

Beachte 'niemals' - das stimmt schon nicht, eine genaue beschreibung- 
wie im dateblatt ist mehr wert als unnötige behauptungen.

von Olli R. (omr) Benutzerseite


Lesenswert?

tinman wrote:

> Mein komentar bezieht sich auf deine aussage:
>
> AREF niemals an VCC anschließen (einzige Ausnahme: die alten
> AT90Sxxxx).

Dazu stehe ich nach wie vor. Es macht in keinem Fall ("niemals") Sinn, 
den AREF Pin mit VCC zu verbinden.

Olli

von Εrnst B. (ernst)


Lesenswert?

Gast wrote:

> Leider weiß ich immernoch nicht, warum die LED mir Probleme macht. Die
> nimmt ja nicht zu viel Strom, oder etwa doch?

Schlimmer Verdacht: Einen Vorwiderstand hast du der LED aber schon 
gegönnt, oder?

von Oliver (Gast)


Lesenswert?

>Dazu stehe ich nach wie vor. Es macht in keinem Fall ("niemals") Sinn,
>den AREF Pin mit VCC zu verbinden.

Na ja, das Datenblatt sagt:
"AVCC is connected to the ADC through a passive switch."

Wenn AVCC nicht extra gefiltert ist, sondern identisch zu VCC ist, kann 
man VCC auch gleich von aussen an AREF schalten. Abstürzen wird der 
Prozessor deshalb nicht.

Oliver

von Norgan (Gast)


Lesenswert?

>> AREF niemals an VCC anschließen (einzige Ausnahme: die alten
>> AT90Sxxxx).
>
> Beachte 'niemals' - das stimmt schon nicht, eine genaue beschreibung-
> wie im dateblatt ist mehr wert als unnötige behauptungen.

Man kann es tun, man gewinnt nur nichts. Man verliert allerdings die 
Möglichkeit die interne Bandgap-Referenz zu benutzen, da man sie damit 
bei Benutzung mit VCC kurzschließen würde. Eine Erkenntnis, die man 
übrigens aus dem Datenblatt (z.B. des erwähnten Mega8) gewinnen kann.

Eine weitere Erkenntnis aus dem Datenblatt ist, dass man, wenn man VCC 
als Referenz möchte, einfach die REFS-Bits in ADMUX auf AVCC setzt. AVCC 
muss man sowieso (eventuell über einen Filter) an VCC anschließen. AREF 
hingegen kann man mit einem Kondensator gegen Masse verbinden. 
Allerdings darf der nicht sehr groß sein. Ansonsten dauert es zu lange, 
bis sich nach dem Einschalten des ADC oder Ändern der Referenzspannung 
die Referenzspannung stabilisiert hat und man muss dann sehr viele 
Messwerte wegwerfen bevor man brauchbare bekommt.

Ist es nicht schön, was man alles im Datenblatt findet? AREF niemals an 
VCC anschließen ist eine Behauptung, die man nach dem Studium des 
Datenblatts im Rahmen ingenieurmäßiger Genauigkeit problemlos 
unterschreiben kann.

von P. S. (Gast)


Lesenswert?

Olli R. wrote:

> AREF darf nie mit der Betriebsspannung verbunden werden. Wenn eine
> interne Referenzspannung benutzt wird, dann nur 100n gegen GND, sonst
> wird die interne Spannung gegen VCC kurzgeschlossen.
>
> ATMEGA16, Datenblatt Seite 209.

Koenntest du vieleicht den konkreten Abschnitt zitieren? Ich weder auf 
Seite 209, noch 210 oder 211 die Aussage, dass VCC nicht auf AREF gelegt 
werden darf.

von Olli R. (omr) Benutzerseite


Lesenswert?

Peter Stegemann wrote:
> Olli R. wrote:
>
>> AREF darf nie mit der Betriebsspannung verbunden werden. Wenn eine
>> interne Referenzspannung benutzt wird, dann nur 100n gegen GND, sonst
>> wird die interne Spannung gegen VCC kurzgeschlossen.
>>
>> ATMEGA16, Datenblatt Seite 209.
>
> Koenntest du vieleicht den konkreten Abschnitt zitieren? Ich weder auf
> Seite 209, noch 210 oder 211 die Aussage, dass VCC nicht auf AREF gelegt
> werden darf.

Wir sollten das jetzt beenden.

Natuerlich darfst Du AREF extern mit jedem beliebigen Signal verbinden. 
Allerdings ist es Dein Problem, wenn Du Dir damit Deinen Controller 
zerschiesst, wenn Du aus versehen oder absichtlich dann die interne 
Referenz verwendest.

Man sollte die Frage vielleicht so formulieren:

Bringt es irgendeinen Nutzen/Vorteil, AREF extern  mit VCC zu verbinden? 
Nein.

Hat es irgendwelche Nachteile/birgt es Gefahren? Ja.

Ansonsten schliesse ich mich Norgan (Gast) an und erklaere die 
diesbezuegliche Diskussion in diesem Thread fuer beendet, das es fuer 
den OP eh nicht relevant ist, da der Tiny13 keinen AREF Pin hat, an dem 
er etwas haette anschliessen koennen.

Wenn noch jemand weiter ueber die externe AREF-Beschaltung diskutieren 
will, dann bitte einen eigenen Thread dafuer aufmachen.

Danke,
Olli

von P. S. (Gast)


Lesenswert?

Olli R. wrote:

> Wir sollten das jetzt beenden.

Wir sollten vor allem mal die Fakten klaeren.

> Natuerlich darfst Du AREF extern mit jedem beliebigen Signal verbinden.
> Allerdings ist es Dein Problem, wenn Du Dir damit Deinen Controller
> zerschiesst, wenn Du aus versehen oder absichtlich dann die interne
> Referenz verwendest.

Diesbezueglich gibt es also keinen Unterschied zischen der Verwendung 
von VCC oder einer anderen externen Spannung.

> Man sollte die Frage vielleicht so formulieren:
>
> Bringt es irgendeinen Nutzen/Vorteil, AREF extern  mit VCC zu verbinden?
> Nein.

Das ist eine voellig andere Frage. Und mit Verlaub gesagt, nur weil im 
Rahmen deines Tellerrandes es keinen Sinn ergibt, VCC auf AREF zu legen, 
muss das nicht allgemeingueltig sein.

> Hat es irgendwelche Nachteile/birgt es Gefahren? Ja.
>
> Ansonsten schliesse ich mich Norgan (Gast) an und erklaere die
> diesbezuegliche Diskussion in diesem Thread fuer beendet,

Peinlicher Abgang, nachdem du hier ein grosses Chaos produziert hast, um 
deine voreilige Aussage irgendwie zu stuetzen.

von Karl H. (kbuchegg)


Lesenswert?

Peter Stegemann wrote:

> Peinlicher Abgang, nachdem du hier ein grosses Chaos produziert hast, um
> deine voreilige Aussage irgendwie zu stuetzen.

So voreilig fand ich seine Aussage gar nicht.

> AREF niemals an VCC anschließen (einzige Ausnahme: die alten
> AT90Sxxxx). Abgesehen davon, dass es wenig Sinn macht kann es
> zu einem Kurzschluss führen.

Als Praxistip würd ich das auch jederzeit unterschreiben.

Er hat klar gesagt, dass ein derartiges Vorgehen keinen Sinn macht (weil 
ja Vcc per Software sowieswo auswählbar ist) und er hat auch gesagt, was 
die Gefahren dabei sind.

Gut, über die Verwendung des Wortes 'niemals' kann man streiten. Man 
hätte das auch anders formulieren können. Aber aus dem Zusammenhang war 
zumindest für mich durchaus erkennbar, was er ausdrücken wollte: Es gibt 
im Regelfall keinen vernünftigen Grund warum man AREF an Vcc 
anschliessen möchte.

Alles weitere, war dann reine Wortklauberei

my 10 cents

von Gast (Gast)


Lesenswert?

> Schlimmer Verdacht: Einen Vorwiderstand hast du der > LED aber schon gegönnt, 
oder?

Nein, ich dachte das der ATtiny13 maximal 40mA zur Verfügung stellt. Tut 
er das nicht?

von Frank L. (hermastersvoice)


Lesenswert?

lieber Gott, lass Hirn regnen.

von Z8 (Gast)


Lesenswert?

>Nein, ich dachte das der ATtiny13 maximal 40mA zur Verfügung stellt. Tut
>er das nicht?

Das meinst Du doch nicht ernst, oder ??????

von Gast4 (Gast)


Lesenswert?

Und wo soll der die Leistung verbraten (5V - U(led))*I(led)?
Also ca. 3*0.04 = 0.12W .

Gast4

von was-willst-du (Gast)


Lesenswert?

Ein Schaltplan am Anfang des Thread wäre sehr hilfreich gewesen. Aber 
jetzt äußere ich mal einen Verdacht: Es gibt keinen. Nur im Kopf des 
Benutzers.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

was-willst-du wrote:
> Ein Schaltplan am Anfang des Thread wäre sehr hilfreich gewesen. Aber
> jetzt äußere ich mal einen Verdacht: Es gibt keinen. Nur im Kopf des
> Benutzers.

Naja, immerhin scheint dort genug Platz zu sein...

Und da dem so ist, nochwas Füllmaterial:

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Stromversorgung

http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Hardware

http://www.mikrocontroller.net/articles/LED

http://www.mikrocontroller.net/articles/AVR-Tutorial:_ADC#Interne_Referenzspannung

von Oliver (Gast)


Lesenswert?

>Nein, ich dachte das der ATtiny13 maximal 40mA zur Verfügung stellt. Tut
>er das nicht?

Um die Frage zu beantworten: Doch, indirekt tut er das. Ziehst du 
größere Ströme aus einem Port, stürzt er ab, oder irgendwas brennt 
durch. Ergo: Der Port stellt 5V zur Verfügung. Du musst durch geeignete 
Beschaltung dafür sorgen, daß damit nicht mehr als 40(?) mA fliessen, 
sonst s.o. Die 40mA kommen mir übrigens sehr viel vor, schau besser 
nochmals im Datenblatt nach.

Oliver

von P. S. (Gast)


Lesenswert?

Karl heinz Buchegger wrote:
> Peter Stegemann wrote:

>> AREF niemals an VCC anschließen (einzige Ausnahme: die alten
>> AT90Sxxxx). Abgesehen davon, dass es wenig Sinn macht kann es
>> zu einem Kurzschluss führen.
> Als Praxistip würd ich das auch jederzeit unterschreiben.

Hier werden leider viele "Praxistips" ohne viel nachdenken als Regeln 
praesentiert.

Seine Aussage ist schlicht irrefuehrend, das Kurzschlussrisiko ist ein 
generelles beim Anschliessen von externen Spannungen (und so im 
Datenblatt dokumentiert), kein spezielles beim Anschluss von VCC.

> Er hat klar gesagt, dass ein derartiges Vorgehen keinen Sinn macht

Und damit nur bewiesen, dass er nicht ueber den Tellerrand zu sehen 
vermag. Ein Verhalten, dass hier viele "Experten" an den Tag legen - sie 
meinen, ohne das eigentliche Problem zu kennen, generelle Aussagen 
darueber machen zu koennen, was richtig und was falsch ist.

Ich habe hier eine Schaltung, bei der der "Anwender" AREF optional mit 
einer Spannung seiner Wahl beschalten kann. Per default ist AREF auf VCC 
gejumpert. Hier ergibt die Beschaltung von AREF mit VCC natuerlich einen 
Sinn und so "speziell" ist der Anwendungsfall auch nicht.

Die Variante, AREF per default offen zu lassen und per Software VCC zu 
waehlen, waere hier geradezu hanebuechen.

von Z8 (Gast)


Lesenswert?

Hi Peter Stegemann,

>Die Variante, AREF per default offen zu lassen und per Software VCC zu
>waehlen, waere hier geradezu hanebuechen.

Was soll das? Standardmäßig wird AREF mit einem 100n C gegen Masse
geschalten, wenn eine interne Ref.-spannung genommen wird und gut is!

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Peter Stegemann wrote:
> Ich habe hier eine Schaltung, bei der der "Anwender" AREF optional mit
> einer Spannung seiner Wahl beschalten kann. Per default ist AREF auf VCC
> gejumpert. Hier ergibt die Beschaltung von AREF mit VCC natuerlich einen
> Sinn und so "speziell" ist der Anwendungsfall auch nicht.
>
> Die Variante, AREF per default offen zu lassen und per Software VCC zu
> waehlen, waere hier geradezu hanebuechen.

Schau dir doch einfach nur mal an was 90% der Fragesteller hier wollen.
Dafür ist der Tip absolut zutreffend (bis auf die 100nF gegen Masse), 
die anderen können mit ihrem ach so speziellen Problem ja mal ins 
Datenblatt schauen...

von P. S. (Gast)


Lesenswert?

Oliver wrote:

> Die 40mA kommen mir übrigens sehr viel vor, schau besser
> nochmals im Datenblatt nach.

Beim ATTiny13 ist das auch noch je nach Pin verschieden, 10mA oder 
20mA...

von P. S. (Gast)


Lesenswert?

Z8 wrote:
> Hi Peter Stegemann,

>>Die Variante, AREF per default offen zu lassen und per Software VCC zu
>>waehlen, waere hier geradezu hanebuechen.
> Was soll das? Standardmäßig wird AREF mit einem 100n C gegen Masse
> geschalten, wenn eine interne Ref.-spannung genommen wird und gut is!

Und was passiert dann, wenn der Anwender eine externe Spannung 
aufschaltet, wie im beschriebenen Beispiel moeglich?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Peter Stegemann wrote:
> Oliver wrote:
>
>> Die 40mA kommen mir übrigens sehr viel vor, schau besser
>> nochmals im Datenblatt nach.
>
> Beim ATTiny13 ist das auch noch je nach Pin verschieden, 10mA oder
> 20mA...

Zumindest bei den Megas 8/16/32 ist unter Absolut Maximum Ratings im 
Datenblatt DC Current per I/O Pin 40.0 mA angegeben.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Peter Stegemann wrote:
> Z8 wrote:
>> Hi Peter Stegemann,
>
>>>Die Variante, AREF per default offen zu lassen und per Software VCC zu
>>>waehlen, waere hier geradezu hanebuechen.
>> Was soll das? Standardmäßig wird AREF mit einem 100n C gegen Masse
>> geschalten, wenn eine interne Ref.-spannung genommen wird und gut is!
>
> Und was passiert dann, wenn der Anwender eine externe Spannung
> aufschaltet, wie im beschriebenen Beispiel moeglich?

Dann soll er das Datenblatt lesen was aber für gefühlte 90% der Anfragen 
hier nicht erforderlich ist (externe Aref mein ich)

von P. S. (Gast)


Lesenswert?

Tim T. wrote:
> Peter Stegemann wrote:

>> Beim ATTiny13 ist das auch noch je nach Pin verschieden, 10mA oder
>> 20mA...
> Zumindest bei den Megas 8/16/32 ist unter Absolut Maximum Ratings im
> Datenblatt DC Current per I/O Pin 40.0 mA angegeben.

Schoen, es geht aber um den ATTiny13.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Peter Stegemann wrote:
> Tim T. wrote:
>> Peter Stegemann wrote:
>
>>> Beim ATTiny13 ist das auch noch je nach Pin verschieden, 10mA oder
>>> 20mA...
>> Zumindest bei den Megas 8/16/32 ist unter Absolut Maximum Ratings im
>> Datenblatt DC Current per I/O Pin 40.0 mA angegeben.
>
> Schoen, es geht aber um den ATTiny13.

Lustig, bei dem steht das Gleiche auf Seite 117.

http://www.atmel.com/dyn/resources/prod_documents/doc8126.pdf

PS: Hab bislang noch keinen Tiny oder Mega in den Fingern gehabt wo dort 
was anders stand.

von Olli R. (omr) Benutzerseite


Lesenswert?

Tim T. wrote:

>>> Was soll das? Standardmäßig wird AREF mit einem 100n C gegen Masse
>>> geschalten, wenn eine interne Ref.-spannung genommen wird und gut is!
>>
>> Und was passiert dann, wenn der Anwender eine externe Spannung
>> aufschaltet, wie im beschriebenen Beispiel moeglich?

Die kann er dann auch mit 100n gegen Masse schalten, das ist der 
externen Spannung egal.

Olli

von P. S. (Gast)


Lesenswert?

Tim T. wrote:

>>> Zumindest bei den Megas 8/16/32 ist unter Absolut Maximum Ratings im
>>> Datenblatt DC Current per I/O Pin 40.0 mA angegeben.
>> Schoen, es geht aber um den ATTiny13.
>
> Lustig, bei dem steht das Gleiche auf Seite 117.

Afaik sind die Werte unter 18.2 relevant...

von P. S. (Gast)


Lesenswert?

Olli R. wrote:

> Die kann er dann auch mit 100n gegen Masse schalten, das ist der
> externen Spannung egal.

Ah ja, ploetzlich keine Kurzschlussgefahr mehr?

von Olli R. (omr) Benutzerseite


Lesenswert?

Peter Stegemann wrote:

>> Die kann er dann auch mit 100n gegen Masse schalten, das ist der
>> externen Spannung egal.
>
> Ah ja, ploetzlich keine Kurzschlussgefahr mehr?

Doch, klar. Die Frage war ja nur, ob der Kondensator stoert, und dass 
tut er nicht, wenn er klein genug gewaehlt wird.

Wenn jemand eine externe Referenzspannung verwendet (bzw. muss), wird 
dies kaum VCC oder AVCC sein (waere ja Bloedsinn, da softwareseitig 
auswaehlbar) sondern eine Spannung, die er sich aufwaendig fuer diesen 
Zweck generiert. Das trifft auf 99% der Anwendungen in diesem Forum 
nicht zu.

Natuerlich kann/wird auch in dem Fall der magische Rauch entweichen, 
wenn man eine interne Referenz auswaehlt, obwohl an AREF eine 
Fremdspannung haengt.

Ich habe schon etliche Diplomanden wochenlang Fehler suchen und neue 
AVRs einloeten sehen, weil sie VCC an AREF geloetet hatten und dann die 
interne Referenz verwandten. Deshalb habe ich mich hier so deutlich 
ausgedrueckt ("niemals").

Olli

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

In 18.2 wird der Pinstrom nur als Vorraussetzung (engl. Condition) für 
den in der Spalte "Parameter" gegebenen Wert gesetzt mehr nicht.
Dort gibt es nix zum Parameter Pinstrom, er wird nur als Vorraussetzung 
für Vol und Voh auf +- 20/10/5 mA gesetzt, ist also praktisch eine 
Eingangsgröße!

EDIT: In der Anmerkung zur Condition steht noch was dazu:

Pins are not guaranteed to sink current greater than the listed test 
condition.

bzw.

Pins are not guaranteed to source current greater than the listed test 
condition.

Wobei aber nach den Absolute Max Ratings immernoch nix kaputt gehen 
sollte...

von P. S. (Gast)


Lesenswert?

Olli R. wrote:

> Wenn jemand eine externe Referenzspannung verwendet (bzw. muss), wird
> dies kaum VCC oder AVCC sein (waere ja Bloedsinn, da softwareseitig
> auswaehlbar) sondern eine Spannung, die er sich aufwaendig fuer diesen
> Zweck generiert.

Lies mein Beispiel nochmal, denke darueber nach und versuche zu 
verstehen, warum es kein Bloedsinn ist, nur weil es nicht zu deinem 
Dogma passt.

von Oliver (Gast)


Lesenswert?

>Wobei aber nach den Absolute Max Ratings immernoch nix kaputt gehen
>sollte...

Gegen "sollte..." hilft richtiges lesen des Datenblatts. Da steht direkt 
neben der Tabelle mit den Absolute Max Ratings:

"Exposure to absolute maximum rating
conditions for extended periods may affect
device reliability."

Jetzt bedeutet "may" nicht "will", aber das steht da nicht ohne Grund.

Oliver

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Oliver wrote:
>>Wobei aber nach den Absolute Max Ratings immernoch nix kaputt gehen
>>sollte...
>
> Gegen "sollte..." hilft richtiges lesen des Datenblatts. Da steht direkt
> neben der Tabelle mit den Absolute Max Ratings:
>
> "Exposure to absolute maximum rating
> conditions for extended periods may affect
> device reliability."
>
> Jetzt bedeutet "may" nicht "will", aber das steht da nicht ohne Grund.
>
> Oliver

Darum ja auch "solle" und nicht "wird"^^

Das bestimmte Alterungsprozesse dadurch verschlimmert werden und das 
Ding wohl auch nicht ewig hält bestreite ich ja auch nicht.

von Gast (Gast)


Lesenswert?

Ich arbeite mit 3V. Da verbrät meine blaue LED 15mA. Sollte also nicht 
zu viel gewesen sein. Ich habe jetzt trotzdem einen Transistor 
eingelötet. Jetzt funktioniert es einwandfrei.

von Z8 (Gast)


Lesenswert?

... aber bitte nicht ein Emitterschaltung ohne Basisvorwiderstand. :)

von Simon K. (simon) Benutzerseite


Lesenswert?

> Das bestimmte Alterungsprozesse dadurch verschlimmert werden und das
> Ding wohl auch nicht ewig hält bestreite ich ja auch nicht.
Das steht da aber nicht.
Da steht, dass das Bauteil unzuverlässig arbeitet könnte, wenn es in 
den Absolute Maximum Ratings betrieben wird.
Also mal abstürzen, mal Amoklaufen oder mal abrauchen spontan.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

for extended periods...

von Simon K. (simon) Benutzerseite


Lesenswert?

Tim T. wrote:
> for extended periods...

Ja, wenn das Bauteil öfteres eine längere Zeit (for extended Periods) 
den Absolute Maximum Ratings ausgesetzt ist (exposure to maximum 
ratings), dann wirkt sich das auf die Zuverlässigkeit des Bauteils aus 
(affects device reliability).

von Oliver (Gast)


Lesenswert?

>Ich arbeite mit 3V. Da verbrät meine blaue LED 15mA. Sollte also nicht
>zu viel gewesen sein.

Äh, woher hast du diese Erkenntnis?

Oliver

von Z8 (Gast)


Lesenswert?

Hi Oliver,

die 15mA an 3V kommen hin!

Er hat momentan 18,7 Grad C im Raum. grins

von Gast (Gast)


Lesenswert?

> Äh, woher hast du diese Erkenntnis?
Weil ich sie bei 3V ans Netzteil angeschlossen habe und es mir 15mA 
angezeigt hat.

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.