Forum: Mikrocontroller und Digitale Elektronik 8051 Derivate mit großem internen Flash


von Koopi (Gast)


Lesenswert?

Hallo,

ich suche einen 8051 Controller mit möglichst viel internem Flash. 
Ursprünglich hatte den AT89C51RE2 in meiner Hard- und Software 
integriert. Es laufen auch bereits 5 dieser Geräte. Leider hat mir Atmel 
heute mitgeteilt, dass dieser Controller nicht auf den Markt kommen 
wird.

Kennt jemand eine verfügbare Alternative?
Wichtig wäre: > 64KB interner Flash, ca. 4KB interner SRAM, min. 1 x 
UART, 3 x PWM

MfG

Koopi

von holger (Gast)


Lesenswert?

>Kennt jemand eine verfügbare Alternative?
>Wichtig wäre: > 64KB interner Flash, ca. 4KB interner SRAM, min. 1 x
>UART, 3 x PWM

ATMega128 ;)

von mehrfacher STK500-Besitzer (Gast)


Lesenswert?

>ATMega128 ;)

der ist ja auch so wahnsinnig 8051-kompatibel.

von mehrfacher STK500-Besitzer (Gast)


Lesenswert?


von lontano (Gast)


Lesenswert?

Atmel ist unter Profis nicht gerade beliebt....schaue bei Silabs rein!

von Robert S. (razer) Benutzerseite


Lesenswert?

lontano wrote:
> Atmel ist unter Profis nicht gerade beliebt....schaue bei Silabs rein!

Warum?

von holger (Gast)


Lesenswert?

>>ATMega128 ;)
>der ist ja auch so wahnsinnig 8051-kompatibel.

Natürlich ist er das nicht. Aber wer beschäftigt sich schon
noch mit Auslaufmodellen wenns was moderneres gibt ? Muss
ja auch kein ATMega sein. Ein ARM7 tuts auch ;)

von Peter D. (peda)


Lesenswert?

Koopi wrote:
> Leider hat mir Atmel
> heute mitgeteilt, dass dieser Controller nicht auf den Markt kommen
> wird.

Ist ja auch nicht so der Brüller. Im Gegensatz zu anderen 8051 mit 
erweiterter 24Bit Adressierung muß man umständlich Bankswitching machen.

Mit 128k Flash und 8kB SRAM gibts z.B. von Silabs 8051-er:

http://www.silabs.com/tgwWebApp/appmanager/tgw/tgwHome?_nfpb=true&_pageLabel=interactiveGuide

Die machen aber auch nur Bankswitching.


Wozu brauchst Du denn soviel Speicher?
Konstante Daten könnte man in nen EEPROM (24C512) oder seriellen 
Dataflash auslagern.


Bei mehr als 64kB Code würde ich eher zu nem ARM Cortex M3 raten, der 
hat auch sehr leistungsfähige Bitbefehle und bis 256kB Flash, 64kB SRAM:

http://www.luminarymicro.com/products/product_selector_guide.html


Peter

von Gast (Gast)


Lesenswert?

uPSD3xxx-Reihe von ST

von Koopi (Gast)


Lesenswert?

> ... wer beschäftigt sich schon
> noch mit Auslaufmodellen wenns was moderneres gibt ?

Wie sagt man so schön: Historisch gewachsen!
Wir haben fertige Sourcen, die ich bereits erweitert habe. Damit bietet 
sich ein "großer" 8051 an.

Ich werde die Alternativen auswerten und dann 'mal schauen.

Danke

Koopi

von Gast (Gast)


Lesenswert?

> Wie sagt man so schön: Historisch gewachsen!

Meinst Du vielleicht: Historisch verwachsen?

Vielleicht solltest Du Dich von Deinem Scheuklappenblick befreien und 
nach aktuellen und zukünftigen Aufgabenstellungen angepaßten Lösungen 
suchen.

Alternativ kannst Du natürlich noch viele Mannwochen in den alten Mist 
investieren - das kostet ja sicher nicht Dein Geld.

Wenn ich ein Wettbewerber von Dir wäre, würde ich Dir dazu raten!

von Peter D. (peda)


Lesenswert?

@Gast (Gast)

Naja, 30.000 Codezeilen schreibt man nicht eben schnell mal auf ne 
andere CPU-Architektur um.

Besonders, wenn man nicht der Originalautor ist, sondern den Code geerbt 
hat.

Oftmals bedeutet ne neue CPU auch erhebliche Hardwareänderungen 
(Bus-Anbindung, Timings usw.).

Die Gefahr besteht auch, wenn man ne neue CPU nimmt, daß dann der Chef 
1000 neue Features rein haben will und schon wird ein neues Projekt 
draus, was viele Mannjahre kostet.

Diese Probleme kenne ich auch und es gibt keine Universallösung dafür.


Peter

P.S.:
Größere 8051-Projekte auf AVR umzurubeln ist oftmals unmöglich, da der 
keine Interruptprioritäten hat. Es muß dann schon der Schritt zum ARM 
sein.

von STK500-Besitzer (Gast)


Lesenswert?

>> Wie sagt man so schön: Historisch gewachsen!

>Meinst Du vielleicht: Historisch verwachsen?

Son Trollgehabe wieder. 8051er wird es noch länger geben und zwar aus 
besagtem Grund.

von Gast (Gast)


Lesenswert?

Nun ja, den Code umzuschreiben ist eine endliche Geschichte. Auftretende 
Hardwareprobleme lassen sich mit entsprechendem Know-How gut 
beherrschen. Die Leute, die die Hardware entwickelt haben, sollten sie 
eigentlich auch nahezu problemlos ändern können.

Die Alternative, weiterhin alles auf der alten Hard- und Software 
aufsetzen zu wollen, erinnert mich irgendwie an ein Buch von Michael 
Ende.

von Chef (Gast)


Lesenswert?

> 8051er wird es noch länger geben und zwar aus
besagtem Grund.

Gutes Argument! - Bist Du vom Wettbewerb?

von lontano (Gast)


Lesenswert?

Vielleicht solltest Du Dich von Deinem Scheuklappenblick befreien und
nach aktuellen und zukünftigen Aufgabenstellungen angepaßten Lösungen
suchen.

Warum den genialen '51 wegwerfen ? Es gibt kaum etwas besseres auf der 
8bit Ebene
Die Derivate koennen ALLES .

von Gast (Gast)


Lesenswert?

Der '51 war vor 10 bis 20 Jahren genial! Dem kann ich voll zustimmen.
Seine Derivate können auch fast alles - nur in der Zwischenzeit gibt es 
Alternativen, die "ALLES" um einiges besser können.
Und wenn man nicht gerade voll auf Atmel fixiert ist, kann man diese 
Typen sogar zu sehr vernünftigen Konditionen kaufen.

von Koopi (Gast)


Lesenswert?

Hallo,

ich sehe schon es gibt viele Meinungen. Allerdings sind viele aus dem 
Hobbybereich.
Eine Software die von mehreren Programmierern in ca. 10 Jahre entstanden 
ist, wird nicht in ein paar Wochen auf einen anderen Prozessor portiert. 
Alleine der Testaufwand würde schon 4 - 6 Monate in Anspruch nehmen.
Als kleine Info an den Wettbewerb: Wir sind mit diesem "Ding" über das 
ich hier spreche die Nr. 1 am Markt. Um da zu bleiben wird bei uns immer 
in zwei parallelen Schritten entwickelt. Die kleinen Schritte am 
vorhandenen Material mit wenig Aufwand. Die Neuentwicklung mit 1000 
neuen Features wie Peter schon schrieb. Da steht übrigens in Zukunft der 
AT91SAM7 mit einem uC/OS-II Kernel auf dem Programm.

Koopi

von Gast (Gast)


Lesenswert?

> Eine Software die von mehreren Programmierern in ca. 10 Jahre entstanden
> ist, wird nicht in ein paar Wochen auf einen anderen Prozessor portiert.

Eine Software, die in einen 8051 paßt, läßt sich sehr wohl in einigen 
Wochen auf eine neue Hardwaregrundlage stellen. Voraussetzungen: Die 
Software muß eine (professionell üblich) gute Dokumentation besitzen und 
man muß die alte und neue Hardware, sowie die Applikation verstehen. 
Ähnliches gilt auch für den Testaufwand, der von Dir mit 6 Monaten 
unglaublich hoch angesetzt wird.

Bei Bastelbuden würde ich das verstehen, aber nicht bei einem Produkt, 
das die Nummer 1 sein soll und von kompetenten Leuten in einer gut 
aufgeräumten Firma betreut wird.

Nur mal so zum Vergleich, in ca. 4 Monaten habe ich ein 
Multicontroller-System mit weit über 20.000 Programmzeilen von grund auf 
neu entwickelt. Natürlich sind auch wir Marktführer, nicht zuletzt wegen 
einer innovativen Betriebskultur, die die Kunden (und natürlich auch den 
Wettbewerb) mit mehreren vollkommen neuen und gut funktionierenden 
Produkten pro Jahr überrascht.

Deine Aufgabe würde ich eher als Entspannungsübung ansehen.

von Peter D. (peda)


Lesenswert?

Gast wrote:

> Eine Software, die in einen 8051 paßt, läßt sich sehr wohl in einigen
> Wochen auf eine neue Hardwaregrundlage stellen.

Puh, da nimmt einer den Mund aber sehr voll (warscheinlich noch nie 
selber nen 8051 programmiert).

Daß 8051-Programme sehr codeeffizient sind sollte ja bekannt sein, D.h. 
sie können sehr komplex und leistungsfähig sein ohne gleich Megabytes an 
Flash zu verputzen. 20.000 Codezeilen (in C) und trotzdem unter 64kB 
Größe ist da kein Widerspruch.

Wenn Du wirklich so ein Superduperprogrammierer bist, müssen sich die 
Firmen ja nur so um dich reißen.


Wir haben auch einige Geräte mit 8051, viele haben schon über 10 Jahre 
auf dem Buckel und werden immmer noch gepflegt und erweitert.
Ich hab nicht den Eindruck, daß unsere Programmierer alle Idioten sind.
Aber wenn ne Erweiterung nötig ist, kommt keiner von denen auf die Idee 
zu sagen, gib mir mal nen ARM und paar Wochen Zeit, ich strick das 
schnell mal eben um.


Peter

von Mike (Gast)


Lesenswert?

@Gast:

Frage dich doch einfach mal ob es die neuen "Super-Chips" die du hier so 
anpreist auch noch in 5 Jahren gibt. Außerdem müssen die erstmal das 
Preis-/Leistungsverhältnis der x51 erreichen. Es kann auch sehr 
vorteilhaft sein, wenn man verwandte Controller von mehreren Anbietern 
bekommt. Dann gibt es nicht unbedingt Probleme wenn ein Hersteller 
plötzlich 3 Monate Lieferfrist hat.

von Koopi (Gast)


Lesenswert?

Hallo,

ich kann mir eigentlich jeden weiteren Kommentar sparen, das haben Peter 
und Mike schon getan.

Koopi

von Gast (Gast)


Lesenswert?

> warscheinlich noch nie selber nen 8051 programmiert

Die Vorzüge des 8051 habe ich schon ausgiebig (mittels C und 
Assembler)genossen, siehe:
> Der '51 war vor 10 bis 20 Jahren genial! Dem kann ich voll zustimmen.

Und genau aus diesen Gründen stelle ich meine Behauptung auf:
1. Der 8051 ist ein sehr, sehr übersichtlicher Controller.
2. Umfangreiche Portierungen habe ich auch bereits durchgeführt.

Anstatt darüber zu jammern wie schwierig das alles ist, macht es doch 
einfach mal. Im Gegensatz zu Neuentwicklungen kann man bei Portierungen 
bei jedem auftretenden Problem nachschauen, wie es geht. Das macht es 
oft verblüffend einfach. Natürlich muß man sich wie schon beschrieben 
gut auskennen.

> müssen sich die Firmen ja nur so um dich reißen.

Da von meiner Arbeit Projekte bis in/über den 10^7 EURO-Bereich abhängen 
und ich mit meinem Umfeld auch sehr zufrieden bin, stellt sich diese 
Frage gar nicht.

von Peter D. (peda)


Lesenswert?

Wenn man einen neuen Chip nimmt, muß man ihn erstmal kennenlernen.
Also richtig schön klein anfangen, Toolchain installieren, 
konfigurieren, lernen.
LED blinken lassen, UART ansteuern, Timer, ADC, Interrupthandler, 
Interruptprioritäten usw.
Dann mal ein kleines neues Projekt damit machen. Dann mal ein Jahr 
warten, ob die Geräte beim Kunden auch stabil laufen.

Man kann nicht eben mal so den MC wechseln, er muß ja auch 
hardwareseitig an das Gerät angepaßt werden.
Ein Gerät ist ja kein PC, wo alles standardisiert ist.
Der MC muß mit den vielfältigsten anderen ICs und Baugruppen 
kommunizieren und funktionieren.


Es bringt keinesfalls was, mit nem neuen Chip ins kalte Wasser zu 
springen, entweder geht man gleich unter oder einige Monate später.


Peter

von Gast (Gast)


Lesenswert?

> Es bringt keinesfalls was, mit nem neuen Chip ins kalte Wasser zu
> springen, entweder geht man gleich unter oder einige Monate später.

Richtig - man muß sich in der alten und neuen Hardware/Software gut 
auskennen!

Benutze also für das redesignte Gerät Deinen Baukasten aktueller Hard- 
und Software. Wenn er gut sortiert ist, dann benötigst Du nur wenig 
Neues.

Für jede unbekannte Controller-Funktion können 2 bis 4 Stunden für den 
Erfahrungsaufbau anfallen (ab und zu auch mal mehr). Ähnliches gilt für 
neue Hardwarekomponenten.

von Peter D. (peda)


Lesenswert?

Gast wrote:

> Für jede unbekannte Controller-Funktion können 2 bis 4 Stunden für den
> Erfahrungsaufbau anfallen (ab und zu auch mal mehr). Ähnliches gilt für
> neue Hardwarekomponenten.


Meine Erfahrungen sind da völlig andere. Man mag zwar die 
Grundfunktionen schnell verstehen, aber ehe man alle Details verstanden 
hat, gehen Monate ins Land.

Ein Kollege hatte mir ganz stolz berichtet, daß er nach mehrwöchiger 
Arbeit endlich nen Interrupt mit dem GCC auf dem LPC zum Laufen gebracht 
hat.
Und nach vielen weiteren Tagen hat er dann sogar die spurious Interrupts 
behandelt gekriegt. Es ist ungemein prickelnd, wenn etwa alle Stunde ein 
Interrupt crasht und man nicht weiß, warum.

Nen LPC-ARM einigermaßen kennenzulernen würde ich nicht unter 3 Monaten 
ansetzen.


Peter

von Gast (Gast)


Lesenswert?

> Und nach vielen weiteren Tagen hat er dann sogar die spurious Interrupts
> behandelt gekriegt. Es ist ungemein prickelnd, wenn etwa alle Stunde ein
> Interrupt crasht und man nicht weiß, warum.

Bei der Suche sitzt Du nicht stundenlang meditativ vor Deinem Aufbau, 
sondern überlegst Dir, wie Du alles möglichst gut mitloggen kannst. 
Tritt der Fehler wieder auf, dann schaust Du in die Ergebnisse und 
denkst über den nächsten Schritt nach. Je nach Problemtiefe sind diese 
Fehler meist nach 3 Tagen bis 4 Wochen gefunden. In der Zwischenzeit 
läßt sich aber gut der Rest ans Laufen bringen, so daß das Projekt nicht 
nennenswert verzögert wird.

Um neue Funktionen kennenzulernen lohnt ein Blick in die oft 
reichhaltigen Herstellerunterlagen. Du mußt sie nur von den 
Herstellerseiten herunterladen und auch lesen. Auch damit läßt sich viel 
Zeit sparen.

von Jan (Gast)


Lesenswert?

Warum muss hier eigentlich immer alles in "Meiner ist größer, meiner ist 
dicker, ..." - Diskussionen ausarten?

Die Frage war doch einfach nur, ob jemand ein bestimmtes Derivat mit 
bestimmten Features kennt. Warum er das wissen möchte ist doch wohl sein 
Bier.

Und wenn es halt unter meiner Würde ist, darauf konstruktiv zu 
antworten, dann lass' ich's halt.

Gruss, Jan

von Gast (Gast)


Lesenswert?

Die Frage lautete:

> Kennt jemand eine verfügbare Alternative?

Und genau das wurde diskutiert!

von Felix (Gast)


Lesenswert?

Interessant, daß unbequeme Meinungen offensichtlich nicht ernst genommen 
werden. Da ich auch schon einige Male den Sprung ins kalte Wasser gewagt 
habe und es dennoch gut ging, kann ich dem "Gast" nur zustimmen.

Gruß Felix

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.