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
>Kennt jemand eine verfügbare Alternative? >Wichtig wäre: > 64KB interner Flash, ca. 4KB interner SRAM, min. 1 x >UART, 3 x PWM ATMega128 ;)
Atmel ist unter Profis nicht gerade beliebt....schaue bei Silabs rein!
lontano wrote:
> Atmel ist unter Profis nicht gerade beliebt....schaue bei Silabs rein!
Warum?
>>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 ;)
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
> ... 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
> 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!
@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.
>> 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.
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.
> 8051er wird es noch länger geben und zwar aus
besagtem Grund.
Gutes Argument! - Bist Du vom Wettbewerb?
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 .
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.
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
> 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.
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
@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.
Hallo, ich kann mir eigentlich jeden weiteren Kommentar sparen, das haben Peter und Mike schon getan. Koopi
> 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.
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
> 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.
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
> 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.
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
Die Frage lautete:
> Kennt jemand eine verfügbare Alternative?
Und genau das wurde diskutiert!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.