Hallo,
Warum sinig heute schon einige AVR's veraltet ?
- ATtiny22L
- AT90S2333
- AT90S4414
- AT90S4434
- ATmega103
Wann sind alle AT90S... Typen veraltet ?
Welche Typen soll man denn verwenden, bei denen sicher ist, daß es sie
auch in ein paar Jahren noch gibt ...?
Gruß
Matthias
Hi,
es wird von Atmel immer Alternativtypen geben. Pinkompatibel sind die
Dinger ja. Die entwickeln sich eben weiter und versuchen ihr Programm
straff zu halten.
Gerade im Moment sind einige Type für 1.Q'03 mit last order
gekennzeichnet, aber das ist kein Problem.
Die neusten Produltionsstände sind angehängt.
Reiner
Soweit ich weiß, kann man den Mega128 in einem extra Mega103-Mode
betreiben (Fuse-Bit).
Die AT90S44xx können direkt durch AT90S85xx ersetzt werden, der
AT90S2333 durch AT90S4333.
Der ATtiny wurde meines Wissens nur kurze Zeit und völlig unbrauchbar
produziert (hatte eine riesen Bug: lief erst nach jedem 2. Einschalten).
Es kann daher sein, daß einige Händler ihn immer noch im Angebot haben,
weil sie ihn nicht loswerden.
Ersatz sind AT90S2323 bzw. 2343, der Einschaltbug ist beim 2343 aber
erst ab Revision G behoben worden !
Du brauchst Dir als keine Sorgen zu machen, daß Programme für die alten
Typen nicht mehr laufen.
Es sei denn, Du hast einen fiesen RJMP mit Wrap-around drinne, der dann
bei den Ersatztypen im oberen leeren Flash landen würde.
Dann kann man das Programm aber einfach duplizieren, d.h. nochmal genau
gleich in den oberen Flash schreiben und schon gehen auch diese
Schweinereien wieder.
Peter
@Peter
Stimmt das wirklich? Der Tiny hat Resetprobleme? Hast Du darüber
genaueres?
Ich wollte den gerade für eine prof. Anwendung (nix Hobby) einsetzen.
Also wenn Du da oder jemand anders etwas darüber sagen kannst, bitte
posten.
Reiner
Ups, da fehlt die "22".
Also richtig: ATtiny22
Und der wird ja nicht mehr hergestellt.
Das bezog sich ja nur auf die oben genannten Typen.
Die anderen (ATtiny12, 15, 26) habe ich auch ausprobiert und bisher
keine Probleme festgestellt.
Man muß bloß die Brownout-Fuse einschalten.
Peter
Es werden sicher nicht alle alten AVR abgekündigt. Was abgekündigt wird
sind solche mit Bugs und solche, von denen es praktisch zwei baugleiche
gibt, die sich lediglich in der speichergröße unterscheiden, wie z.B.
4414 und 8515 oder 2333 und 4433. Die von Mathias aufgezählten
Controller gehören alle dazu. Sogar die neueren Mega323 und Mega163 wird
es nicht mehr lange geben. IMHO waren das nur Lückenfüller zwischen den
AT90 und den neuen Megas in 0,35µ Technik. Und der Mega103 war IMHO auch
nur ein "Testschuß", seine Leistung war im Vergleich zu den anderen zu
gering.
Aber genug philosophiert
Gruß
Markus
Hallo Peter und Reiner,
Ich habe ähnliche Probleme mit einem ATtiny15:
Manchmal "lebt" er nach einem Reset nicht. Aber nach einem zweiten Reset
=> alle i.O. Und Ich hatte einmal folgendes Problem:
t15 in der Zielschaltung, Zielschaltung 100% i.O., neues Programm in t15
übertragen => der t15 war wie "tot", wurde sehr heiß und zog viel Strom.
Ich schaltete ihn sofort aus, ließ ihn abkühlen, und schaltete ihn
wieder ein => alles funktioniert ohne Probleme.
Kann jemand dieses Verhalten nachvollziehen, bzw. mir erläutern ?
Gruß
Matthias
Ich kann mir höchstens vorstellen, das die Ports alle nach Masse
geschaltet haben (oder ein Teil) und an den Ports irgendwo 5V angelegt
waren, vielleicht auch ann allen über zu kleine Widerstände. Wäre das
einzige, was mir da einfällt.
Gruß
Markus
Hallo Markus,
Bei meiner Schaltung handelt es sich um einen Dimmer, der für 16 A
ausgelegt ist (ohmische sowie induktive Last).
Im Anhang befindet sich die Schaltung.
(Von den Triac`s soll nur eines von beiden verwendet werden ...)
Zum Testen, habe ich N nicht mit GND verbunden, und verwende als Last
eine Lampe über einen 24V Trafo ( als "Trenntrafo"). Als Induktive Last
verwende ich einen weiteren 24V Trafo verkehrtherum mit primärenm
Kurzschluß. (nur kurzzeitig zum Testen bei großen induktiven Leistungen)
Hast du evtl. jetzt eine Idee, was dort passiert sein könnte ?
Gruß
Matthias
Hm, ja, wie ich bereits gesagt habe. Ich vermute, das der Controller
beim Einschalten als Ausgänge geschaltet hat und hat auf 0 (Sink)
geschaltet. Dann schalten intern Transistoren gegen Masse. Wenn jetzt
die beiden Potis (oder einer) auf Vollausschlag stehen (nach 5V)
verursacht der Controller einen Kurzschluß. Das der AVR noch lebt hat du
vermutlich der Tatsache zu verdanken, das die Potis nicht ganz am
Anschlag waren.
Als Schutz für die Ports solltest Du einen Widerstand von z.B. 1k
zwischen den Schleifer und den Port.
Hab die Änderung mal angehängt, aber nochmal kontrollieren. Hab jezt
nicht auf Net Names geachtet.
Gruß
Markus
Ja, schon. Aber wenn der Controller beim starten außer Kontrolle gerät
und irgenwelchen Blödsinn mach könnte es theoretisch passieren, das er
auf einmal in das DDR Register den Wert $FF schreibt. Wenn dann noch die
Potis auf Vollausschlag sind fließt ein ordentlicher Strom.
Ich hab zumindest keine andere Erklärung, wie ein AVR beim einen mal
Einschalten richtig heiß werden kann und beim nächsten mal nicht mehr
Gruß
Markus
Wenn ein CMOS Ic heiß wird, liegt das oft am Latch-Up-Effekt.
D.h. die Ausgangsstufen bilden einen parasitären Thyristor und der
zündet dann.
Das kann passieren durch zu hohen Ausgangsstrom (Kurzschluß gegen VCC
oder GND, oder Kapazitäten am Ausgang) und durch Störimpulse.
Die AVRs sind ziemlich empfindlich in dieser Beziehung.
Und beim Schalten großer Ströme kann sich schon mal induktiv so ein
Störimpuls einkoppeln.
Immer schön reichlich Abblockkondensatoren verwenden, die Ports
eventuell mit Serienwiderständen (100 Ohm) und Schottky-Dioden gegen
GND/VCC schützen.
Peter