Hallo Leute, Wir sind etwas ratlos in unserm Projekt an der Abendschule bei der Auswahl des µC. Zu beginn hatten wir einen AT89c51id2 in die engere Wahl getroffen. Doch jetzt denken wir das einen Produkt von Analog Device besser wäre. Nämlich einen ADUC 832. Beide Controller sind 8051er Architektur. Der von Anlaog Device hat den Vorteil das er schon zwei PWM Ausgänge fix fertig hat. Nun zum nächsten Problem: Da wir im "Programiern" noch unter der Katergorie Anfänger einzuordnen sind und uns die Grundlagen immer mit der 8051er Architektur beigebracht worden sind dachten wir uns, dass wir auch beim Projekt einen solchen verwenden sollten um es beim programieren (assembler) etwas leichter zu haben. Doch wo bekommen wir so einen µC, oder ein Experimentierboard??? Für AVR, PIC, gibt es alles wie Sand am Meer und noch dazu ist der Preis auch akzebtabel. Unsere Regergen haben ergeben das die anderen "Typen" in der Programierart viel komplexer sind. Das ist für uns nicht von Vorteil. Weiters haben die anderen nicht so viele Ports wie die beiden oben gennanten. Ich danke im Voraus für jede Info mfg. steve
"Regergen", besuch am besten next time den Deutsch-Kurs.... aber zum Thema: Nimm 'nen AVR, oder fährst du auch noch mit einem Golf 1 Oldtimer rum, für den es nur teure Ersatzteile gibt?
Ich suche auch gerade dazu Infos. Hier habe ich angefangen: http://de.wikipedia.org/wiki/8051#Entwicklungsboards_.2F_-systeme Man findet schon ne Menge beim rumgoogeln. Gruß dirk
Stefan Krytinar wrote: > Zu beginn hatten wir einen AT89c51id2 in die engere Wahl getroffen. > > Der von Anlaog Device hat den Vorteil das er schon zwei PWM Ausgänge fix > fertig hat. Der Atmel hat doch ein PCA mit 5 PWM-Ausgängen. > Doch wo bekommen wir so einen µC, oder ein Experimentierboard??? Die 8051 mit Bootloader braucht man nur auf ne Rasterplatine zu pappen, Quarz und MAX202 ran und fertig: Beitrag "8051 Entwicklungsboard" Peter
@Stefan der ADUC832 gibt es nichts vergleichbares von der AVR Fraktion genau dann, wenn Du die analogen Eigenschaften ausnuetzen willst. Analog Devices weiss einfach wie man Analog Devices baut ;-) Im Ernst, falls der ADC und der DAC nicht hoch auf der Wunschliste stehen, dann gibt es einfachere, bessere Micros. Allerdings schlagen der ADC und der DAC so ziemlich alles was sonst mit 8-bit zu haben ist. Schau Dir auch mal die Typen von Silabs an. Da gibt es 8051 basierende Micros mit 100 MIPS (ca 6 mal so schnell wie der schnellste AVR). Die 8051 Architektur ist zwar aelter als der AVR aber es gibt auch eine groessere Vielfalt von Teilen von mehr verschiedenen Anbietern. Eine gute Adresse ist immer www.8052.com, eine weitere www.keil.com, da gibt VIEL mehr Info als nur ueber den Compiler. Vielleicht hilfts ja ein wenig, Robert
@Pete Der GolfI braucht auch weniger Ersatzteile als der Golf IV. Und der Golf V ist laut VW-Betriebsrat ein !nicht! produzierbares Auto. Sind nicht besser geworden... Die Architektur ist schon alt, das stimmt, aber sie haben ein Konzept gehabt, dass bis in die jetzige Zeit gut funktioniert. Eine gute Seite ist auch www.erikbuchmann.de, insbesondere der Codegenerator. Gruß Elektrikser
Hallo, versuchs mal mit dem AT89C51CC03er von Atmel (8051er). Der hat u.a 64 kByte Programmspeicher auf dem Chip, A/D-Wandler und einige PWM-Ausgänge. Dazu gibt es bei palmtec (www.palmtec.de) ein gutes Entwicklungsboard, beim Elektor-Verlag die Lehrbücher dazu, programmiert wird das Ganze dann in ´C´, ein leistungsfähiger C-Compiler ist bei Wickenhäuser zu erhalten (die kostenlose Demo-Version kann immerhin 8 kByte Code-Umfang, die Vollversion kostet weit unter 100 EURO, www.wickenhaeuser.de). Gerade für die Ausbildung ist das System gut geeignet, es besitzt auch die Empfehlung von der PAL. Viel Spaß, Carlos
Die Abbildung vom Palmtec ist ganz witzig. Hatten wohl für's Foto grad kein seriellen 'C681 auf Lager, drum haben sie ersatzweise ein SRAM an dessen Stelle gesteckt, um das Loch im Bild zu stopfen.
schau dir mal von Silabs die F33x/F41x an , die Developement Boards haben meiner Meinung nach sogar ein noch besseres Preis-Leistungs-Verhältniss als das STK von Atmel weil ein In-circuit-emulator gleich dabei ist , gibts bei Digikey wer meint die "8051"-er wären veraltet sollte sich mal die aktuellen Modelle anschaun , die ursprünglich 12 instruction cycles sind mitlerweile meist auf 1-2 runteroptimiert und einige uC haben perepherie integriert die man bei AVRs kaum findet (DAC,RTC,...) c-compiler gibts kostenlos (sdcc), oder eine 4K/2K beschränkte version vom Industrie Standard Keil
An den 51ern ist nicht die Implementierung veraltet, sondern die ISA (Instruction Set Architecture), mit ihrer Begrenztheit und Vielfalt an Speicherbereichen. Man muss sich mehr Gedanken über Platzaufteilung von Daten machen als nötig, und sie erschwert beispielsweise "reentrant" Funktionen und architekturübergreifende RTOS-Implementierungen (ebendrum, und aufgrund des Stacks).
A.K. wrote: > An den 51ern ist nicht die Implementierung veraltet, sondern die ISA > (Instruction Set Architecture) Veraltet ist sie ganz und garnicht, sie ist nur auf Steuerungen optimiert. Wer Unix auf nem 8051 implementieren will, der ist ein Idiot. Auch muß man für ein RTOS immer die mindestens 10-fach höhere Rechenleistung hinblättern, als bei der klassichen Mainloop mit Interrupts, um die gleiche Aufgabe zu lösen. Und ein RTOS erleichert die Programmierung in keinster Weise, eher das Gegenteil. Die Parameterübergabe zwischen Funktionen über globale Variablen ist total tabu. Man muß immer spezielle Zugriffsfunktionen aufrufen, die dann umständlich eine Variable für andere Prozesse sperren, auslesen, modifizieren, abspeichern und dann wieder freigeben. Das hat auch den schönen Nebeneffekt, daß es zu einem Deadlock kommen kann, wenn die andere Funktion nicht damit rechnet, daß ihr der Zugriff temporär verweigert werden kann. Auch ist bei einem RTOS die Abarbeitungsreihenfolge nicht mehr determiniert. Ein RTOS hat also nur bei sehr großen Anwendungen (>1MB) Sinn und dann nimmt man gefälligst keinen 8051. Peter
"Und ein RTOS erleichert die Programmierung in keinster Weise, eher das Gegenteil." Ansichts- und Übungssache. "Man muß immer spezielle Zugriffsfunktionen aufrufen" Stimmt. Deshalb verwende ich dafür vorzugsweise C++. "daß es zu einem Deadlock kommen kann" Stimmt. "sehr großen Anwendungen (>1MB) Sinn" Oder eben auch ein Mega32 mit 4 Tasks (Benutzerinterface, Steuerung, Überwachung, Kommunikation). Muss man nicht so machen, kann man aber so machen.
"Man muß immer spezielle Zugriffsfunktionen aufrufen" Bei kooperativem Multitasking entfällt das. Das verbessert zwar nicht unbedingt die Reaktionszeit, macht aber (in meinen Augen) den Programmablauf übersichtlicher, weil allerlei Zustandsabhängigkeiten durch strukturierte Programmabläufe ersetzt werden können. Wie gesagt, Ansichtssache. Und halt dessen worin man geübter ist. Ich persönlich kann ganz gut in solchen Prozessen denken, zumal sich diese Arbeits- und Denkweise von der in Windows/Unix nicht wesentlich unterscheidet. Resourcenfresser müssen einfache RTOSe nicht sein. Mit einem kompletten Prozesswechsel inklusive Scheduler in weniger als 4µs kann ich ganz gut leben (ARM7 60MHz).
Um mal etwas Gift aus der Sache rauszunehmen: Ich halte die 51er im selben Sinn für veraltet, wie ich dies bei den PC-Prozessoren schon anno IBM AT Anfang der 80er tat. Auf guten Gründen gibt es beide noch und wird es beide noch lange Zeit geben, aber Qualität und Aktualität der ISA gehört nicht zu diesen Gründen.
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.