Hallo! Ich habe mir 2Samples des DS80C390 von Dallas/Maxim bestellt. Da steht das er 8051 kompatibel ist. Weiß jemand ob sich das auch auf das nötige Programmiergerät bezieht, bzw. wo finde ich eine passende Bauanleitung (kostengünstig <15 ohne Platine, sollte jedoch den PC schützen)? Außerdem habe ich noch keine Erfahrungen mit 8051er Chips gemacht. Ich würde ganz gerne in C programmieren und einen kostenlosen Compiler dafür verwenden. Wo bekomme ich Infos dazu? Zu diesem Chip noch eine Frage: Gibt es irgendwelche Adapter um die QFP oder PLCC-Chips auf Lochrasterplatinen einzusetzten? Meine bisherige Methode (jeden 2ten Pin hochbiegen und kabel anlöten) ist auch nicht unbedingt gut. Oder wie kann man die Chips ansonsten sinnvoll in eigenen Projekten verwenden, ohne Platinen herzustellen? Hermann
Schon mal was von PLCC-Sockeln gehört. Desweiteren brauchst du einen externen Programmspeicher sprich Eprom Flash oder ähnliches, weil der 80C390 hat nur ein int. RAM von 4kb. Aber nen Daten und Adreßbus per Drähtchen und dann am besten bei max 33MHz, naja. Da würde ich doch ne Platine entwerfen. Kostet ja nich viel Mfg Sascha
Am besten nimmst Du einen Adapter PLCC44->DIP40, wenn Du es bequem haben willst. Die sind nicht ganz billig, wenn Du sie fertig kaufst. Pass aber auf, dass Du nicht so einen professionellen nimmst, die sind nämlich für Programmiergeräte und schweineteuer (ab 80 Euro aufwärts). Zum Basteln reicht ein einfacher, z.B. bei http://www.eprom-shop.com/versand/adapter/index.shtml . Der kostet dann "nur" 20 Euro.
1. Gibt's diese Sockel nicht irgendwo billiger? Ich hatte schon mal davon gehört, aber zu diesen Preisen kann sich das ein Schüler doch fast nicht leisten. Die Platinen sind im übrigen auch zu teuer. 2. Zum Programmspeicher: Ich habe hier zwei 256kb non-volatile ram bausteine. Gehen die? Und warum soll ich nicht den internen Ram nehmen? Mehr als 4kb flash hat der avr 4433 auch nicht. 3. auf der maxim hp steht, das der Chip einen Taktvervielfacher hat. D.h. langsammerer Quarz, oder? 4. Wie bekomme ich jetzt mein Prog. in Chip oder ext. Ram? Ich hab, den Programmieradapter für den avr 4433 nachgebaut, geht der? An welche pin gehört der? 5. Welche Compiler für C gibt es? Viele Dank für euere Hilfe, Hermann
Noch einmal paar Anmerkungen: 1. Ich habe auf http://home.t-online.de/home/holger.klabunde/projects/ 8051.htm einen Schaltplan für ein 8051-Board gefunden. Leider ist er ziemlich aufwendig, mit vielen ICs. Ich suche lieber etwas das eine ähnliche Minimalbestückung wie im Tutorial auf dieser Seite braucht. Da ich -wie bereits gesagt- aus Kostengründen auf Streifenrasterplatinen arbeitenen müss sollte es eben sehr einfach sein. 2. Ist es sinnvoller einen schnellen Quarz zu nehmen, oder den Taktvervielfacher zu aktivieren? 3. Besteht auch bei anderen Leuten hier Interesse an PLCC->DIL Adaptern? Dann könnte man sich ja zusammen tun und eine Platine fertigen lassen. Auf 1qdm müssten doch mind. 10 St. passen. Dann kann man bei Reichelt für ca. 50ct eine PLCC-Fassung und für ein paar Ct. die Stiftleisten kaufen, so das eine Fassung auf max. 6 kommen dürfte. Hermann
Hallo Hermann, der 80cC390 ist auf keinen Fall der low-cost-Einstieg. Es gibt EPROMs mit Latch (78C256), das wäre die Lösung mit dem geringsten Verdrahtungsaufwand (ALE->/CE). Übliche EPROMs sind aber nicht die schnellsten, d.h. 8MHz und kein Taktvervielfacher dürfte das Maximum sein. Ich habe ihn eingesetzt, aber da ist ein Coolrunner-CPLD (TQFP-100-Gehäuse) mit drauf, der liest aus einem 24C512 in einen schnellen SRAM aus und startet dann vom SRAM. Die Cache-SRAMs (15ns) sind dann schnell genug für den 80C390. Ist aber auch eine 4-Ebenen-Platine. Der richtige Einsteiger-8051 ist der AT89S8252, da Du dafür kein Programmiergerät brauchst. Auch must Du da keine Samples schnorren, die Preise bei Reichelt oder Segor sind o.k. Als C-Compiler wird der SDCC verwendet. Hab ich aber nicht ausprobiert, da ich auf Arbeit den Keil benutze. Der ist super, macht den kleinsten Code auch im Vergleich mit den AVR-Kontrollern. Ist aber dementsprechend teuer. Peter
Dass der Keil kleineren Code als ein AVR-Compiler produziert liegt wohl weniger am Compiler als an der Prozessorarchitektur. Andreas
Der 80C390 hat 4kb Ram und das ist kein! Programmspeicher. Den mußt du extern beschalten. z.b Eprom oder Flash.
Hi! Ich möchte diesen Chip nicht als Einstieg in die µC-Welt nutzen. Dafür habe ich schon den avr4433. Ich wollte jetzt einfach mal die 8051-Serie testen. Und da ich diese Chips jetzt schon mal habe, warum soll ich sie da nicht verwenden. Die Geschwindigkeit ist mir nicht so wichtig, ich verfolge ja kein konkretes Ziel. Und wenn ich später mal mehr Speed brauche, kauf' ich mir einfach schnelleren RAM. Meine RAM-Bausteine haben 150ns Access Speed. Reicht das? Oder kann ich für den Anfang das 4kb interne RAM einfach immer per PC mit meinem Prog. auffüllen? >Der richtige Einsteiger-8051 ist der AT89S8252, da Du dafür kein >Programmiergerät brauchst. Wie kommen die Daten dann in den Chip? Irgend ein Programmiergerät brauche ich doch immer. Das für die NVRAMs könnte ich mit dem 4433 bauen. Zu den Samples: Warum sollte ich sie mir nicht bestellen, wo sie doch gratis sind? Ich habe auch so in den letzten 2Monaten für Elektrozeug über 140 ausgegeben. Auf Dauer kann ich mir das nicht leisten. >Es gibt EPROMs mit Latch (78C256) Braucht man die Latch unbedingt? Geht es mit den RAM nicht auch ohne? Zum Compiler: Kleinen Code brauch ich nicht unbedingt. Bis 256kb voll sind dauert's etwas. Es geht mir hier in erster Linie nicht um ein vollständiges System, sondern erst mal darum wie ich das Ding überhaupt anspreche. Hermann
Die DS80C390 ist keine Einsteiger CPU und erfordert für ein lauffähiges System noch einige Hardware drumherum die mit Sicherheit erheblich teurer ausfallen wird als ein AT89S8252. Zum Einstieg ist dieses Modell auch denkbar ungünstig gewählt zumal sie wohl kaum von einem kostenlos erhältlichen C Compiler direkt unterstützt werden wird.
Hallo, 1. Der 80C390 hat keinen internen Programmspeicher! Das heißt das du ein ext. Eprom oder Flash brauchst. 2. Der AT89S8952 ist ISP-Programmierbar. Da brauchst du nur einen Adapter. Oder du nimmst einen T89C51RD2 oder so. Die programmierst du über die RS232 Schnittstelle. 3. beim 8051 mit ext. Programmspeicher brauchst du ein Latch. Der Datenbus und die unteren 8 Adressleitungen sind gemultiplext. 4. Der 80C390 ist sauschnell. Bei einem Takt von 33MHz, sollte das Eprom 70ns haben oder weniger. Dazu gibts bei Maxim auch Aplikationen. Zum guten Schluß: Du brauchst im prinzip ein vollständiges System Mfg Sascha
>Zum Compiler: Kleinen Code brauch ich nicht unbedingt. Bis 256kb voll sind dauert's etwas. kBit nicht kByte - Wie sascha schon gesagt hat. Wer kein Geld hat kann sich eben kein teueres Hobby leisten, so einfach ist das. Elektor macht in letzter Zeit ne Menge mit den 89er'n, z.B.: 9/2002. Vor einiger Zeit war nen richtiger Einsteigerkurs für den 8252 drinne, mehrere Hefte, inkl. Board, ASM-Programmierung, C-Programmierung und sogar irgend nen BASIC-Schweinkram. Genau das richtigen für den Einstieg. Wenn du allerdings nur nen bisschen experimentieren und lernen willst empfehle ich dir das STK300, da ist nen ATMEGA103 drauf, der hat 128kByte Programm-Flash intern, ist optional mit externen SRAM ausstattbar und besitzt alles was man sich denken kann. Analog-Eingänge, RTC, PWM, ..., schau dir einfach mal das Datasheet auf http://www.avrfreaks.net/ an. Zudem er wie fast alle AVRs mit dem GNU-C-Compiler AVR-GCC programmierbar ist. Assembler gibts sowieso wie Sand am Meer. Das Board kostet inkl. MwSt etwa 100,00EUR - Also auch für Schüler bezahlbar: http://www.sander-electronic.de/es0002.html Ich habs mir vor einiger Zeit auch bestellt, zum testen von exotischen Sensoren oder erstellen von Beta-Software überaus geeignet, einfach immer dann wenn die Software vor der Hardware vorhanden sein muss. P.S.: Ich hab auch noch kein eigenes Einkommen, kann aber behaupten dass Elektronik als Hobby mit 100 pro Monat mehr als gut bezahlbar ist, lange sparen hab ich nie müssen. Zu sagen ist aber noch dass man auch als Schüler sein eigenes Geld verdienen kann/muss/tut.
Hallo! Vielen Dank für euere Infos. Ich glaub ich heb mir diese Chips erst mal etwas auf. Ich hab einfach gedacht, der würde passen. Jetzt suche ich allerdings nach einen anderen 8051-IC von dem ich gratis Samples bekommen kann. Ich hab einfach fast kein Geld mehr :( Ach ja, beim DS80C390 steht bei Internal Program Memory "Up to 4kB SRAM" auf http://para.maxim-ic.com/compare.asp?Fam=HSuC&Tree=uController&HP=Microcontrollers.cfm Geht es nun mit dem RAM, oder nicht? Ich hab jetzt mal folgende Vorschläge, bitte äußert euch dazu: - DS89C420 hat 16kB flash, ISP - DS83C520 16kb ROM - DS5000 8kb NVRAM Ich bin auch für andere Vorschläge offen. Auch von anderen Herstellern die Samples verschicken. Hermann
Hab das neue Posting von Sascha erst jetzt gesehen. OK, nur 32kb. Reichen auch. Das STK300 kenn ich, ich will aber was mit den 8051ern machen. Die AVRs kenn ich schon. Ich werd mir auch bald einen Ferienjob suchen, aber das geht bestenfalls erst nächstes Jahr. Also muss ich noch ne Zeit von 15 Taschengeld/Monat leben. Hermann
DS89C420 hat 16kB flash, ISP is schon ok Nimm lieber nen T89C51 AC2 von Atmel ist auch ISP hat aber nen A/D. Kriegste auch als Samples
Wenn ich von Atmel Samples anfordere(ich wollte schon mal 'nen ATMega103 haben) bekomm ich nur eine Automatische Antwort, die mir sagt ich soll mich an die Distris wenden und die Antworten nicht. Was soll ich da machen? Beim Country-Feld reinschreiben, dass ich in den USA wohne und dann in ne extra Adresszeile "Germany" tippen? Wo ist außer dem AD-Wandler der Vorteil des T89C51? Ich hab mir dafür extra MAX195 Chips bestellt. Die haben gleich 16Bit und sind auch noch sehr schnell. Kann ich den Programmieradapter für den AVR weiterverwenden, oder muss ich mir da einen neuen bauen? Und wenn er nicht geht, wo gibt's eine Bauanleitung?
Jaja 16bit. Viel Spaß damit. Nimm doch gleich nen 24Bit'er von Linear. Für den Anfang nutze lieber mal kleiner wie 8Bit oder 10Bit, die in manchen Controllern vorhanden ist. Denn solche Wandler wie der MAX195 sind nicht für Experiemente auf Lochraster geeignet, steht sogar im Datenblatt "Wire-wrap boards are not recommended". Für Flash-Serie von Atmel und Philips brauchst du keinen Programmier-Adapter. Verbinde die seriellen Schnittstellen von dem 51'er und dem PC mit nem MAX232 oder so und Progge los...... Wegen Sampels schreibe einfach mal direkt Atmel in Heilbronn an (mal ein Brief anstatt einer Mail). Mfg sascha
Es geht mir ja nicht unbedingt um die vollen 16bit. Etwas Reserve kann ja nicht schaden. Mir ist wichtiger, dass ich immer dann wenn ich die Daten abrufen will(egal wie oft das ist) immer ein möglichst genauer Messwert da ist. Mit dem AD vom 4433er hab ich schon etwas rumgespielt. Jetzt wollte ich halt nen anderen Chip testen und da der keinen AD hatte hab ich mir die gleich mit bestellt. Das mit ATMEL anschreiben probiere ich mal. Muss man da nen Firmennamen angeben? >Für Flash-Serie von Atmel und Philips brauchst du keinen >Programmier- Adapter. Und was ist mit den Dallas-Chips? Und mit welchem Programm kommt der Code dann in den µC? Danke für die Hilfe! Hermann
Hallo Hermann, Du kannst die DS89C420, DS5000, T89C51xxx, P89C51xxx alle über die serielle programmieren, d.h. ein MAX232 wird noch benötigt. Der AT89S8252 wird genau so wie die AVRs über die parallele programmiert, da gibt es haufenweise Programme im Netz, z.B. Ponyprog. Der AT89S8252 ist der preisgünstigste von all den genannten für den Fall das Du Projekte fertig hast und nicht einen extra Programmer bauen willst. Ansonsten findest Du hier eine Programmerbauanletung für die AT89C2051 und AT89C52 Serie: http://www.specs.de/~danni/tools/proflash/index.htm Der Maxim-Sampledienst über Internet ist wirklich super. Für Atmels ruf mal bei MSC oder Ineltek an. Peter
Den MAX232 hab ich da. An welche PINs der kommt müsste ja im Datenblatt stehen, oder kann mir das gleich einer sagen, damit ich nix falsch mach? Muss ich dann einfach die Daten an die Serielle Schnittstelle ausgeben? Aber muss dem µC nicht irgendwie mitgeteilt werden, dass er jetzt programmiert werden soll. Der kann ja nicht alles was an der Schnittstelle kommt einfach in Flash schreiben. Mit Ponyprog hab ich schon gearbeitet und den Adapter aus dem Tut auf dieser Page hab ich auch. Ob ich jetzt noch nen billigen Programmer brauche, oder nicht ist mir eigentlich egal. Hauptsache ich bekomme die ICs dazu kostenlos. >Der Maxim-Sampledienst über Internet ist wirklich super. Kann ich nur bestätigen. Und dann bekommt man auch noch alles in so schönen Plastikboxen für die Aufbewahrung. Aber auch bei National gibts keine Probleme. >Für Atmels ruf mal bei MSC oder Ineltek an. Auf Emails habe beide nicht geantwortet. Meinst du die geben dann einem Schüler, der nicht mal ein bestimmtes Projekt vorweisen kann - einfach so zu basteln - die doch nicht ganz billigen µCs? Hermann
Atmel und Philips haben eine Programiersoftware für ihre Controller. Bei Atmel glaube ich heißt es Fips und bei Philips Winisp. Mfg Sascha
OK, ich hab mir jetzt mal den DS89C420 bestellt und bei Atmel bzw. Distris werde ich auch mal nach Chips fragen. Jetzt würde es mich noch interessieren, wie ich den MAX232 genau anschließen müsste. Am liebsten wären mir die Pinbezeichnungen, damit ich das ganze problemlos auf andere Pinbelegungen an anderen Chips übertragen kann. Hermann
Na mal bitte etwas das Hirn anstrengen... Pinbelegung: http://www.maxim.com/ und das Datenblatt suchen. Anschluss: http://www.mikrocontroller.net/tutorial6.htm bzw: http://images.google.de/images?hl=de&lr=&ie=UTF-8&oe=UTF-8&q=MAX232 Wenn man in England bekannte hat, bekommt man übrigens auch Samples von Atmel.
Das Datenblatt hab ich schon, aber da war mir noch nicht alles klar: Ich muss also nur Pin 11(232) mit Pin 11(TDX0) und Pin 12(232) mit Pin 10(RDX0) verbinden? Dann noch VCC+Pin31(EA) mit +5V und VSS u. RST mit GND verbinden, an XTAL1 den OSZI hängen und fertig? Und zum Programmieren einfach RST an +5V und EA und PSEN an GND? Der Strich über EA und PSEN heißt doch dass die invertierend sind. Und im Datenblatt steht: >When the DS89C420 is powered up and has entered its user operating >mode, the ROM loader mode can be invoked at any time by forcing >RST = 1, EA = 0, and PSEN = 0. Bedeutet sowas dann das ich da am Eingang eine logische Null hintun muss, oder ist das nach dem Invertieren gemeint, so das in Echt eine 1(5V) anliegen muss? Ansonsten glaube ich habe jetzt alles verstanden. Nochmal Danke für die vielen hilfreichen Antworten. Hermann
Könnte mir jetzt bitte mal einer sagen, ob das aus meinem letzten Posting jetzt stimmt, oder nicht? Hermann
/EA = +5V RESET mit einem 1µF Kondensator an +5V und mir 10k an GND. Am besten noch ein Taster. /PSEN ist normalerweise nur ein Ausgang. Der Strich ist unrelevant. Einfach an GND zum Programmieren anschließen. Mit RS232 guck doch einfach mal ins Tutorial, hilft vielleicht. Das ist eine schließlich eine Standartbeschaltung Mfg Sascha
Das mit dem MAX232 ist mir schon klar, wie ich den schalten muss. Nur es gibt 2 serielle Ports und ich wusste nicht genau ob an den ersten oder an den 2ten. Hab's jetzt doch noch im Datenblatt gefunden, dass es der 1te ist. Ich hab gemeint, im Datenblatt gelesen zu haben, dass man keinen Kondensator für den Resetport braucht. Ich finde die Stelle aber im Moment nicht. Kann es sonst zu Problemen kommen? >/EA = +5V Immer oder nur beim Programmieren? Hermann
Den Widerstand kannst du dir sparen. Der ist intern. Den Kondensator brauchst du noch. /EA ist für die Auswahl internen oder externen Speicher. Da du den internen Speicher nutzt (Flash) also /EA=+5V Mfg Sascha
Hallo... habe inzwischen einige Erfahrungen mit dem 80C390 gemacht. Ich habe jetzt das Problem, dass ich noch einige mehr haben sollte... Könnt ihr mir vielleicht einen Versand nennen, der die ICs verkauft (Reichelt, Simons, bürklin, Conrad... schon probiert) Vielleicht solltest Dir erst mal überlegen, was du mit dem Controller machen willst, der 80C390 ist speziell für CAN-Appikationen/ Kommunikationsaufgaben konzipiert. Ich selbst habe den uC mit der Entwicklungsumgebung von Tasking in ANSI-C programmiert. Die DEMO-Version ist aber auf 2kB Code begrenzt. Man sollte sich auch immer vor Augen halten, wie viel 4kB RAM in der Embedded Welt sind ! Einen externen RAM kann man vorsehen, muss aber nicht sofort eingebaut werden. Einen guten Einstieg bieten die Bücher von Elektor zum Thema 8051. Die Schaltungen können mit wenigen Änderungen übernommen werden. Abschließend wollte ich noch sagen, dass der 80C390 schon so ein paar Tücken hat und deshalb nicht für den Einstieg geeignet ist. Ich würde auf keinen Fall "blind" irgend ein Controller auswählen um dann verwundert Features zu suchen, die der willkrlich ausgewählte Controller nicht hat. Deshalb: Kaufe doch einen normalen 8051, spiel damit rum (dafür gibts auch Freeware C-Compiller (sdcc zum Beipiel)) Einen EEPROMER gibts günstig bei www.Batronix.de und dann wenn die Aufgabe klar ist, kannst du auf die zahlreichen 8051 Derivate zurückgreifen... MfG Thorsten PS:
Ab 18 St. bei Segor. Allerdings geben die ne Lieferzeit von 10 Wochen an. Kannst ja mal bei der deutschen MAXIM-Distribution nachfragen, ob die dir auch kleinere Mengen rausschicken.
hallo ich arbeite auch mit dem 89c420. als c-compiler benutze ich den von wickenhäuser ist bis 8kb freeware oder so. den downloader kannst du ja auch von maxim oder dallas downloaden. im anhang mal ein schema meiner prozessorplatine. vieleicht hilft dir das ja weiter. ist auf jeden fall ein guter prozessor (finde ich) und wenn nötig auch schnell bis 33Mips RISC struktur. gruss tobias
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.