mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller Nicht-flüchtig programmieren


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Herrmann (Gast)


Bewertung
-7 lesenswert
nicht lesenswert
Guten Abend. Ich habe mir vor ein paar Wochen einen Arduino Uno 
angeschafft und mich mit dem ATMega328 angefreundet. Jedoch soll in 
meinem Projekt der ATMega verbaut werden und für mehrere jahrzehnte 
seinen Dienst verrichten. Ich befüchte nur dass weil das Programm auf 
dem Chip in einem Flash Speicher liegt nach rund 10 Jahren die Lichter 
ausgehen. Ich weiß den Chip entnehmen und neu bespielen dauert 5 Minuten 
aber das kommt nicht in Frage. Daher... welche Alternativen habe ich da?

Gruß Herrmann

von Dergute W. (derguteweka)


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> welche Alternativen habe ich da?

Mechanische Rechner.

Gruss
WK

von Markus M. (mmvisual)


Bewertung
-1 lesenswert
nicht lesenswert
Nehme einen PROM Speicher. Den programmiert man einmalig und kann man 
nicht löschen. Und einen µC der keinen Flash hat.

... und verwende keine Elkos.

von Werner P. (werner4096)


Bewertung
7 lesenswert
nicht lesenswert
Herrmann schrieb:
> Ich befüchte

nicht befürchten. Datenblatt lesen.

von Dyson (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> Daher... welche Alternativen habe ich da?

Indem du in Zyklen von <=10 Jahren den Speicher Segment für Segment 
ausliest und den Inhalt neu draufschreibst. Sowas ähnliches macht der 
RAM in deinem PC alle paar ms. Das wirst du schon hinkriegen. Zehn Jahre 
bis zum ersten Mal ist ja eine lange Zeit.

von Jemand (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Hallo

Arduino ist (war) ja meist => AVR und die sind auch in der Flash 
Variante schon deutlich älter als 10 Jahre auf den Markt und werden auch 
(vor allem) professionell genutzt.
Ist den irgendwas von Problemen bekannt?
Die Flash Technik wurde doch gerade so ausgelegt das sie ein Ersatz für 
die in "Kleinmengen" immer teuren und unflexiblen PROM ist?

Jemand

von talvisota (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Zwei MCUs im Design vorsehen. Nach abgelaufener Zeit flashen die MCUs 
sich gegenseitig. Nebenbei kann man den Normalbetrieb mit der Redundanz 
der zweiten MCU absichern.

von Herrmann (Gast)


Bewertung
-8 lesenswert
nicht lesenswert
Danke  Markus M und talvisota

Sich selbst oder gegenseitig neu flashen würde mir zu aufwändig werden. 
Ich hatte schon vermutet dass es in Richtung PROM geht. In diesem Fall. 
Ich bin nicht so gut informiert. Mein eindruck war dass PROM uC nicht 
mehr so verbreitet sind oder nicht dieselbe Marktstellung haben wie 
andere. Man hört und sieht kaum etwas. Was kosten PROM uC die mit dem 
ATMega328p vergleichbar wäre in der Regel? Die Programmiergeräte dazu 
sind bestimmt immer noch teuer oder? Und kann ich den Code vom 328 
einfach auf den PROM übertragen? (von der Bezeichnung der Ein/ Ausgänge 
mal abgesehen)

Gruß Herrmann

von Dyson (Gast)


Bewertung
8 lesenswert
nicht lesenswert
Wie kommst du mit deinen Kenntnissen eigentlich auf die Idee, daß deine 
Schaltungen überhaupt funktionieren werden und falls doch, daß sie 
länger als ein paar Tage halten werden?

von Herrmann (Gast)


Bewertung
-2 lesenswert
nicht lesenswert
Ich komme auf die Idee weil ich bereits mehrere Prototypen von meinem 
Projekt gebaut habe und gerade dabei bin alles zu optimieren. Alles ist 
schon fix und fertig. Ich möchte jetzt nur noch die Technologie 
verbessern.

Gruß Herrmann

von Alter Sack (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hermann! Lass Dich nicht verarschen.

Bei normalen  Temperaturen garantiert der Hersteller 100 Jahre! 20 Jahre 
bei 85 Grad. Lies das Datenblatt, Seite 1/7. solange der AVR keinen 
extremen Temperaturen ausgesetzt ist, sollte da nichts passieren.

https://www.sparkfun.com/datasheets/Components/SMD/ATMega328.pdf#page7

In meiner Wetterstation werkeln nun schon seit 2001 einige PICs und ein 
AVR ohne irgendwelche Probleme. Dein AVR wird uns beide überleben. In 
meiner Praxis über 20 Jahre hatte ich noch keinen uC Ausfall.

Natürlich trifft das nur auf legitime Exemplare von namhaften 
Herstellern zu. Bei unbekannten China Exemplaren unbekannter Herkunft 
und ohne Stammbaum ist natürlich alles möglich.

von A. M. (elmo64)


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> Ich befüchte nur dass weil das Programm auf
> dem Chip in einem Flash Speicher liegt nach rund 10 Jahren die Lichter ausgehen.

Zitat aus dem Datenblatt der Atmegas 48,88,168,328:
"Reliability Qualification results show that the projected data retention failure rate is much less than 1 PPM over 20 years at 85°C or 100 years at 25°C."

Bevor der Flash vergesslich wird, benötigen andere Schaltungsteile 
sicherlich mehrere Überholungen.

Herrmann schrieb:
> Was kosten PROM uC die mit dem, ATMega328p vergleichbar wäre in der Regel?

Schaue einfach bei den großen Distributoren. Unter vielen Anderen, gibt 
es unter Anderem einige PICs und 8051 Derivate als OTP Versionen. Ob das 
aber Echter PRom ist, steht im Datenblatt.
Ansonsten gehen natürlich auch alle µCs, die mit externem 
Programmspeicher arbeiten.

Herrmann schrieb:
> Ich komme auf die Idee weil ich bereits mehrere Prototypen von meinem
> Projekt gebaut habe und gerade dabei bin alles zu optimieren. Alles ist
> schon fix und fertig.

Du bist dir bewusst, dass ein neuer µC zu einem weigehenden Redesign 
führen wird?
Falls du einen Atmega328 mit OTP- oder MROM möchtest, ist das nur eine 
Frage des Preises.

: Bearbeitet durch User
von marais (Gast)


Bewertung
5 lesenswert
nicht lesenswert
Werner P. schrieb:
>> Ich befüchte
>
> nicht befürchten. Datenblatt lesen.

Ist wirklich kein Problem. Es gibt tatsächlich eine Begrenzung der 
Lebensdauer für die Schreibzyklen, das betrifft Dich aber, so wie Du es 
schreibst, nicht. Was das Lesen angeht, gibt es die Sache mit der 
Verweildauer der Ladung in den Zellen. Da die AVR-Teile gutmütiges SLC 
(single level cell)-Flash verwenden, hat man hier viel Luft nach oben. 
Solange das Teil unter Spannung steht und läuft und die Zellen 
regelmässig angefasst werden, passiert da gar nichts. Erst wenn Du Dich 
entscheidest, Dein Gerät 10 Jahre lang in der Schublade zu lagern, 
müsste man anfangen, sich Gedanken zu machen.

Wozu ich aus eigener Erfahrung sagen kann, dass ich ein Projekt aus den 
frühen 90er Jahren (68881 mit Flash) vor 5 Jahren nochmal gestartet 
habe, und es keine Probleme gab (Mein Code von damals enthielt einen 
CRC-Check beim Einschalten, ich kann also davon ausgehen, dass der 
Inhalt komplett in Ordnung ist).

Wie andere schon sagten: Mach' Dir eher Gedanken über die Lebensdauer 
Deines Projekts. Ein Elko in der Nähe eines Kühlkörpers würde mir da 
mehr Sorgen machen als der Flash-Speicher.

von Herrmann (Gast)


Bewertung
-5 lesenswert
nicht lesenswert
Danke  Alter Sack
Leute nehmt euch ein Beispiel an ihm.

Das mit den 10 Jahren war eine Grundannahme von mir da mir diese 
Eigenheit von Flash Speichern, floating-gate usw. bekannt war. Allerding 
beziehen sich diese Angaben in der Regel auf Festplatten und USB 
Speicher die natürlich sehr viel stärker frequentiert werden als so ein 
Mikrocontroller weswegen ich schon erwartet hatte dass bei dem der 
Speicher etwas länger hält. Der Temperaturbereich in meinem Fall könnte 
zwischen - 15 und 70°C schwanken. Darauf kein billiges Plagiat zu kaufen 
werde ich dann wohl in Zukunft achten. Und eigene Erfahrungswerte von 
jemanden sind natürlich das aller Beste. Mir einen Chip auf den Tisch 
legen und mal eben 10 - 20 Jahre warten wäre schwierig.

Also wenn noch jemand Langzeit-Erfahrungswerte dazu hat kann er sie hier 
gerne noch beitragen würde mich interessieren.

Ansonsten Danke nochmal.

von Larry (Gast)


Bewertung
1 lesenswert
nicht lesenswert
> OTP

ist EPROM ohne Loeschmoeglichkeit.

Echte PROMs gab es z.B. in der 74er TTL-Serie. Bei denen
wird eine Si-"Fuse" durch den Programmierer durchgebrannt.
Die Kapazitaeten sind bescheiden und die Leistungsaufnahme hoch.
Zuverlaessiger wird das Gesamtkonstrukt dadurch sicher nicht.

> MROM

Ob das wirklich "maskenprogrammierter" ROM ist?
Oder nur ein Programmierservice fuer OTP?

2 Controller sind ja schon vorgeschlagen worden,
dazu dann vllt 3 SPI-Flashs mit dem Codeinhalt, damit man ein
Quorum bilden kann.
Und wenn ein Controller bei der Pruefsumme versagt,
dann mit dem Standby-Controller aus dem SPI-Flash neu programmieren.
Der Standby-Controller wird dann auch gleich der neue Master.
Die SPI-Flashs wird man auch gelegentlich refreshen muessen.

Aber fuer die Ewigkeit wird das auch nicht reichen.

Eine Tontafel mit der Bedienungsanleitung nicht vergessen!

von Larry (Gast)


Bewertung
0 lesenswert
nicht lesenswert
P.S.:

Auch echte ROMs koennen kaputtgehen. Ich hatte mal einen
ROM aus einem AppleII mit einem Wackelbit...

von Stefan H. (Firma: dm2sh) (stefan_helmert)


Bewertung
0 lesenswert
nicht lesenswert
Larry schrieb:
> Auch echte ROMs koennen kaputtgehen. Ich hatte mal einen
> ROM aus einem AppleII mit einem Wackelbit...

Ja, auch Antifuse-Memory ist davon betroffen. Ob der "echte" ROM jetzt 
Masken-ROM war oder Fuse- bzw. Antifuse-Speicher oder nur ein EPROM ohen 
Fenster ist für mich unklar.

Eigentlich sollte ich einmal nach Papers suchen: "Optimal refreshing 
algorithmens for reliable extended longterm data retention of antifuse 
memory."

von Karl K. (karl2go)


Bewertung
1 lesenswert
nicht lesenswert
Herrmann schrieb:
> Ich komme auf die Idee weil ich bereits mehrere Prototypen von meinem
> Projekt gebaut habe und gerade dabei bin alles zu optimieren.

Dann solltest du langsam mal lernen Datenblätter zu lesen:

Data retention: 20 years at 85°C/100 years at 25°C

Dass der AVR sein Programm verliert ist dein kleinstes Problem.

von A. M. (elmo64)


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> Der Temperaturbereich in meinem Fall könnte zwischen - 15 und 70°C schwanken.

Am Widerstandsfähigsten sind Bauteile mit Military grade.
Zu einem Produkt für die Ewigkeit gehört aber deutlich mehr, als nur 
robuste ICs.


Wieder einmal eine geheime Schaltung und Anwendung...

Benötigst du überhaupt einen µC? Vielleicht könntest du alles mit 
wenigen Logik-ICs aufbauen?

: Bearbeitet durch User
von Roman (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Herrmann schrieb:
> Ich komme auf die Idee weil ich bereits mehrere Prototypen von
> meinem Projekt gebaut habe und gerade dabei bin alles zu optimieren.
> Alles ist schon fix und fertig. Ich möchte jetzt nur noch die
> Technologie verbessern.
>
> Gruß Herrmann

Guten Morgen Hermann,

poste bitte Schaltplan und Sourcecode!

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> Mir einen Chip auf den Tisch
> legen und mal eben 10 - 20 Jahre warten wäre schwierig.

Die Zeit haben auch die Hersteller nicht. Dort wird mit verschärften 
Umgebungsbedingungen getestet und dann für moderatere Bedingungen runter 
skaliert.

von Peter D. (peda)


Bewertung
1 lesenswert
nicht lesenswert
Es werden praktisch keine Geräte mehr mit PROM hergestellt, alle laufen 
mit Flash.
Selbst OTP ist Flash, wo die Löschfunktion disabled ist.

von Michael U. (amiga)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Herrmann schrieb:
> Also wenn noch jemand Langzeit-Erfahrungswerte dazu hat kann er sie hier
> gerne noch beitragen würde mich interessieren.

keine Ahnung, ob das für Dich Langzeit-Erfahrung ist:
Ein Tiny45 mit RFM-Modul sendet hier alle 2 Minuten die Temperatur aus 
dem Gefrierfach des Kühlschranks.
Geflasht sehr wahrscheinlich am 1. ‎März ‎2009, ‏‎20:33:33.
Außer alle Jahre Batterie wechseln hat der seine Aufgabe noch nicht 
vergessen.

Gruß aus Berlin
Michael

von Gerhard (Gast)


Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Aus dem Datenblatt des ATMEGA328:
Reliability Qualification results show that the projected data retention 
failure rate is much less than 1 PPM over
20 years at 85°C or 100 years at 25°C.
Und das reicht Dir nicht???

Gerhard

von Jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Selbst OTP ist Flash, wo die Löschfunktion disabled ist.

Dann muss er sich eben einen Ringkernspeicher bauen. Der hält nahezu 
ewig...

von Larry (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> Dann muss er sich eben einen Ringkernspeicher bauen. Der hält nahezu
> ewig...

Das kann nur einer schreiben, der nie mit sowas gearbeitet hat.
Der Inhalt kann genauso korrupt werden wie RAM oder Flash.

Und dann darf man den "Urlader" an der "Konsole" wieder mal
neu eintippen.

Und die "Konsole" ist weiss Gott kein bequemes Terminal.
Sondern so viele Tasten wie das (Maschinen-)Wort breit ist.
Plus eine Increment- und LoescheAlles-Taste.

von Stefan F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Das einzige mal, als bei mir ein Flash Speicher seine Daten verlor, war 
Ende der 90er Jahre bei einem Modem. Ich denke, dass man sich heute 
nicht mehr darum sorgen muss.

von Frank W. (Firma: DB1FW) (frankw) Benutzerseite


Bewertung
2 lesenswert
nicht lesenswert
Es macht aber Sinn, auf eine gute Stromversorgung, Blockkondensatoren 
usw. zu achten. Je nach Einsatzgebiet. Ich habe ATMegas auf Booten 
eingesetzt. Dort ist es in der Tat vorgekommen, dass die Programmierung 
kaputt war. Neu flashen und alles ging wieder. Sehr selten, aber es ist 
vorgekommen. Seit ich die Stromversorgung verbessert habe ist das 
Problem weg.

Langzeitstabilität hängt also nicht nur vom Prozessor/Speicher ab.

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


Bewertung
0 lesenswert
nicht lesenswert
Herrmann schrieb:
> Also wenn noch jemand Langzeit-Erfahrungswerte dazu hat kann er sie hier
> gerne noch beitragen würde mich interessieren.

Wallas Nautic 40D Dieselheizung mit AT90S2313, Baujahr 1999. Läuft also 
seit 20 Jahren und es war bis jetzt nur eine 1N4005 Diode defekt. Die 
allerdings hatte den merkwürdigsten Defekt, den ich je bei einer Diode 
gesehen habe.
Der kleine MC wird den Aussentemperaturen ausgesetzt und bis auf etwa 
50°C geheizt, wenn die Heizung arbeitet.

: Bearbeitet durch User
von m.n. (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Matthias S. schrieb:
> Wallas Nautic 40D Dieselheizung mit AT90S2313, Baujahr 1999.

Bei mir ist es ein Kodeschloß an der Gartentür mit gleichem µC, was auch 
schon seit 20 Jahren läuft.
Wo es öfter Ausfälle gab, das waren EPROMs. Da ging das ganze Gerät nach 
10 - 15 Jahren garnicht mehr.

von Marc V. (Firma: Vescomp) (logarithmus)


Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Selbst OTP ist Flash, wo die Löschfunktion disabled ist.

 Genau, aber selbst mit PROM wäre ihm nicht geholfen.
 M328 kann nicht mit externem Programmspeicher funktionieren, bzw.
 kann schon, aber nur als Interpreter, d.h. die (mühsam) eingelesenen
 Daten müssen interpretiert werden, wozu wiederum der interne Flash
 benutzt werden muss, was wiederum bedeutet...

 Das ist wieder einmal so eine Frage:
 Ich habe keine Ahnung von Programmieren aber wie kann ich meinen
 Programm vor dem Kopieren schützen...
 Ich habe keine Ahnung von der Hardware aber wie kann ich verhindern,
 dass der uC seine Daten nach 20 Jahren verliert...

Herrmann schrieb:
> ausgehen. Ich weiß den Chip entnehmen und neu bespielen dauert 5 Minuten
> aber das kommt nicht in Frage. Daher... welche Alternativen habe ich da?

 So ein Blödsinn.
 Selbst Kernkraftwerke und Stationen im All werden überholt und Teile
 ausgetauscht, nur bei dir kommt so etwas nicht in Frage...

Herrmann schrieb:
> Sich selbst oder gegenseitig neu flashen würde mir zu aufwändig werden.

 Lol.
 Zeugt wiederum von deinen (unzureichenden) Kenntnissen.
 Einen Bootloader kann man nicht mit bestehendem Bootloader neu flashen,
 es sei denn, du hast den Bootloader selbst geschrieben, aber das
 übersteigt deine Möglichkeiten bei weitem...

: Bearbeitet durch User
von Stefan F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Frank W. schrieb:
> Es macht aber Sinn, auf eine gute Stromversorgung, Blockkondensatoren
> usw. zu achten.

Das stimmt wohl. Den ein µC der Amok läuft, kann unter Umständen seinen 
eigenen Programmspeicher löschen.

EEproms sind noch empfindlicher, die können schon bei einem simplen 
Lesezugriff vergesslich werden, wenn dabei die Spannungsversorgung 
instabil ist.

von Frank B. (frank501)


Bewertung
0 lesenswert
nicht lesenswert
Jens schrieb:
> Dann muss er sich eben einen Ringkernspeicher bauen. Der hält nahezu
> ewig...

Nee.
Echte Kerle bauen ihren PROM aus einzelnen Dioden auf.

von Michael U. (amiga)


Bewertung
0 lesenswert
nicht lesenswert
Larry schrieb:
> Das kann nur einer schreiben, der nie mit sowas gearbeitet hat.
> Der Inhalt kann genauso korrupt werden wie RAM oder Flash.
Kann mich nicht erinnern, daß sich unser KRS4201 das mal erlaubt hätte,

> Und dann darf man den "Urlader" an der "Konsole" wieder mal
> neu eintippen.
>
> Und die "Konsole" ist weiss Gott kein bequemes Terminal.
> Sondern so viele Tasten wie das (Maschinen-)Wort breit ist.
> Plus eine Increment- und LoescheAlles-Taste.

Ja, aber man konnte das eben noch machen, außerdem kannte unser 
Robotron-Techniker den sowieso auswendig.

War aber praktisch, abends Stop zu drücken und auszuschalten, morgens 
einschalten und Stop wieder rausnehmen und er lief da weiter, wo man am 
Abend zuvor aufgehört hat. :-)

Gruß aus Berlin
Michael

von Christian M. (Firma: magnetmotor.ch) (chregu) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Marc V. schrieb:
> Selbst Kernkraftwerke und Stationen im All werden überholt und Teile
>  ausgetauscht, nur bei dir kommt so etwas nicht in Frage...

Er macht wahrscheinlich eine interstellare Raumsonde...

Gruss Chregu

von Guest (Gast)


Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Core Rope Speicher, damit sind sie mit der Apollo zum Mond geflogen das 
sollte reichen.

von Nosnibor (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Guest schrieb:
> Core Rope Speicher, damit sind sie mit der Apollo zum Mond geflogen

Schlechtes Beispiel. Mit der Mondfliegerei war es nach kaum vier Jahren 
vorbei, und man hat es seit dem nicht wieder hinbekommen. Woran das wohl 
liegt?   ;)

von pnp (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Nosnibor schrieb:
> Woran das wohl liegt?   ;)

Das wirst du uns in deiner unendlichen Weisheit bestimmt gleich 
verraten.

von Guest (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Nosnibor schrieb:
> Woran das wohl liegt?   ;)

Auf jeden Fall mal nicht daran daß das Programm aus dem Speicher 
verschwunden ist :D

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.