Hallo alle miteinander! Ich habe mir von ELV die Mikrocontroller-Experimentierplatine besorgt und stehe nun vor dem Problem, wie programmiere ich ihn! Ich habe schon früher einen Mikroprozessor programmiert, da war aber immer eine kleine Tastatur und ein LCD-Display dabei, so dass man sah was man machte, bzw. überhaupt was machen konnte. Das Programm wurde dabei immer sofort in ein EEPROM geschrieben. Hier nun weiß ich absolut nicht wie ich ein Programm eingeben soll. Bei ELV teilte man mir mit, dass ich das EPROM entsprechend programmieren soll. Zwar steht mir ein Programmiergerät zur Verfügung, weiter bringt mich das aber im Moment auch noch nicht. Wo kann ich eine Anleitung zu diesem Thema bekommen? Insbesondere des ELV-Microprozessor-Sets? Brauche ich extra Software dafür? mfg Tobias Endrullis
Du brauchst ein Betiebssystem. Entweder von ELV oder selbst geschrieben.
Heutzutage geht man eigentlich davon aus, daß jeder MC-Bastler auch einen PC besitzt. D.h. man benutzt einen Text-Editor, um die Programme zu schreiben und auf der Festplatte abzuspeichern. Dann besorgt man sich je nach Programmiersprache einen Assembler oder Compiler, womit dann letztendlich ein *.HEX File entsteht. Und diese *.HEX File brannte man früher umständlich in einen EEPROM, den man dann in den Sockel des MC-Boards steckte. Heutzutage wird aber oft ein MC mit internem Flash benutzt, damit man bequem vom PC das *.HEX-File reinladen kann, ohne den MC oder ein extra EPROM umstecken zu müssen. Z.B.: http://www.mikrocontroller.net/forum/read-1-25968.html Peter
Die Mikrocontroller Platine von ELV ist tatsächlich so aufgebaut, dass man nur ein progammiertes EPROM stecken kann. Man kann die Schaltung aber leicht so "aufbohren", dass man ihr noch ein RAM verpasst das dann als Programmspeicher und Datenspeicher fungiert. Das Programm läuft dann aus dem RAM ohne dass der Prozessor etwas davon merkt. Das funktioniert natürlich nur solange wie die Schaltung Spannung hat, ist also nur etwas zum probieren, testen usw. In dieser Phase benötigt man allerdings ein kleines Ladeprogramm das im EPROM steckt, um das zu testende Programm vom PC auf das Mikrocontroller Board zu bringen. Wenn das Programm dann funktioniert kann man ein EPROM brennen. Genau dieses Verfahren passend zur ELV Platine, aber natürlich auch für jede gestrickte 8051er Platine, habe ich in einem Einsteigerbuch beschrieben. "Mikrocontroller Experimentierbuch Franzis Verlag ISBN: 3-7723-5005-4" Dem Buch liegt auch eine CD mit dem KEIL Assembler, Compiler usw. sowie kleinen Demoprogrammen und das oben angesprochen Ladeprogramm bei. Gruß Meinrad
Also ich würde mir das Buch sparen. Alles, was da drin steht, findet man auch zuhauf im Internet kostenlos. Und für Fragen ist ja das Forum hier da. Das gesparte Geld gibst Du dann lieber für eine Experimentiersteckplatine und die Bauteile aus Peters Vorschlag aus. Das ELV-Teil verkaufst oder verschenkst Du am besten wieder. Das ist nicht sonderlich nützlich. Du schreibst dann die Software entweder in Assembler, C oder Basic. Für alles gibt es kostenlose Software im Netz: C: Entweder den komplett freien SDCC oder die Evaluation-Version vom Keil, die kannst Du bei Keil auf der Homepage herunterladen, sie ist aber in der Programmgröße beschränkt. Basic: Bei Bascom gibt es eine in der Größe beschränkte Test-Version Assembler: Hier gibt es sehr viele kostenlose im Netz. Wenn das Programm dann assembliert oder kompiliert ist, flasht Du das mit der von Peter genannten Software in den Controller, machst einen Reset und schon startet das Programm. Also nicht erst umständlich per Terminalprogramm raufladen, per Maschinensprachemonitor starten. Ein LCD oder andere Bausteinchen hast Du mit der Steckplatine auch schnell aufgebaut.
Mein Anliegen ist folgendes: In dem Buch "Mikrocontroller Experimentierbuch" (Franzis) wird beschrieben, wie man die ELV-Platine (Experimentierset 68-155-74) umzubauen hat, damit man einen externes RAM als Programm- und Daten-RAM nutzen kann. Leider ist dieser Teil im Buch über den Umbau meiner Meinung nach etwas kurz geraten. In dem Buch ist lediglich eine kurze Beschreibung und ein kleiner Schaltbauplan zu finden, der sich mir nicht ganz erschließen will. Könnte das hier jemand auch für einen Laien verständlich erläuternd darstellen? Ich wäre sehr dankbar! mfg M.M
Hi Michael, ich würde auf den Rat von Michael hörwen, so weh das ausgegebene Geld auch tut. Damit Du mit der Platine ordentlich arbeiten kannst, brauchst Du noch einen Extra Eprom-Programmer, ein Eprom-Löschgerät, am besten mehrere Eproms. Das ist alles Technik von gestern, Du schmeisst Deinem Geld nur weiteres hinterher. Einen Microcontroller ohne Flash sollte man heute nicht mehr in die Hand nehmen (müssen). Ausnahme: Du brauchst 10.000 Stück davon, dann gibts günstigere Lösungen ;-) Schau Dich bei den AVR-Teilen um (oder auch Atmel 8051-Flash-Derivate), mit sehr wenig Aufwand bekommst Du ein laufendes System, ein AVR und ein paar Widerstände auf einem Steckbrett reichen schon als Minimallösung. Wenn Du früher schon mit mc gearbeitet hast, wirst Du nach der Einarbeitung begeistert sein, wie einfach und schnell das mittlerweile geht. Stefan
Wenn ich alles richtig verstanden habe, dann kann man mit der im Buch beschriebenen Aufrüstung der Platine, erstmal zu Testzwecken ein Programm aufspielen und dann erst ein Eprom brennen. In dem Angebot von ELV steht, dass man auch optional ein EEPROM an Stelle des EPROMS nehmen kann. Es ist auch gleich im Packet dabei. Ein EEPROM kann man doch mehrmals beschreiben, richtig? Ich weiß nicht, ob einer dieses besagte Buch kennt, und mir bei diesem Aufrüsten des externen RAMS helfen könnte. Das war eigentlich mein Anliegen und der Grund meines vorherigen Postings. Vielen Dank nochmal Ich hab mir das Experimentierboard von ELV schon bestellt. ;-) Mittlerweile hab ich schon einiges über die 8051 Controller Familie gelesen und würde nur äußerst ungern zu den mir weniger vertrauten sogenannten AVRs wechseln. Danke nochmal und cu :-)
"... die 8051 Controller Familie..." Der AT89C51RD2 ist doch ein richtiger 8051-er. Er hat eben bloß noch einen Bootloader mit drin, so daß man ganz ohne extra EEPROM, RAM und Pipapo direkt ein Programm reinladen kann. Der einzige extra Chip, den man noch braucht, ist der MAX202 zur Pegelwandlung nach RS-232. Peter
Also ich hab mir jetzt mal die Mühe gemacht und bei ELV nachgeschaut. Das EEPROM, was Du da mitbekommst, ist ein SERIELLES EEPROM, das ist kein Ersatz für das Eprom. Theoretisch könntest Du statt dem Eprom ein PARALLELES EEPROM einsetzen, das muss aber von der Hardware unterstützt werden (WR-Leitung), Du musst es extra kaufen (wird bei ELV nicht angeboten) und Du musst es auch programmieren können. Und das wirst Du mit Sicherheit mit dieser Platine nicht schaffen. Diese Platine ist meiner Meinung nach ein alter Ladenhüter, praktisch dieselbe 8031-Schaltung habe ich mir vor 20(!!) Jahren schon selbst gebaut. Ein externes RAM parallel zum Eprom zu hängen ist theoretisch möglich (ist die Schaltung nicht in dem Franzis-Buch mit drin?). Aber nicht einfach, weil der 8031 Programm- und Datenbereiche getrennt hat. Wenn Du Dich in den 8031 schon verguckt hast, dann folge Peters Rat: von Atmel bekommst Du ihn mit internem Flash und allem was Du Dir wünschen kannst. Stefan
Der von Peter vorgeschlagene AT89C51RD2 ist ja sogar pinkompatibel zum alten 8031. D.h. Du kannst ihn für den 8031 auf Deine ELV-Platine einsetzen, das Eprom und das Latch weglassen und hast eine komplette Testumgebung. Die Pins für den Adress/Datenbus bekommst Du auch noch geschenkt. Ach ja, der AT89C51RD2 ist etwas fixer, aber mit der Zeit gewöhnt man sich auch daran ;-) Stefan
Angenommen ich nehme den AT89C51RD2 anstatt eines 8031: Wie kann ich dann meine Programme draufladen? Kann ich die Assemblerbefehle, wie ich sie auf für den 8031 benutze, auch für den AT89C51RD2 nehmen?
>>"... die 8051 Controller Familie..." >>Der AT89C51RD2 ist doch ein richtiger 8051-er. >>Er hat eben bloß noch einen Bootloader mit drin, so daß man ganz ohne >>extra EEPROM, RAM und Pipapo direkt ein Programm reinladen kann. >> >> Der einzige extra Chip, den man noch braucht, ist der MAX202 zur >> Pegelwandlung nach RS-232. >>Peter Was ist ein MAX202? Pegelumwandlung RS-232??????
1. Ja, der AT89C51RD2 kann die gleichen Assembler-Befehle wie der 8031 (eigentlich kann keiner von beiden Assembler, aber sie benutzen den gleichen Maschinencode g). Es kann bestenfalls sein, daß evtl. benutzer Externer RAM anders angesprochen werden muß, da er sich in einem anderen Adressraum befindet - das ist abhängig von der externen Hardwareumgebung. Ich würde Dir das "Mikrocontroller-Kochbuch" von Andreas Roth als Literatur empfehlen. Damit habe ich es gelernt. 2. Ja, RS-232 Pegelwandlung. Ich benutze allerdings den Max232, ist geschmackssache.
> Tobias Endrullis WoW! Bist Du mit dem berühmten Freddy Endrullis aka "Ohase" verwand? Siehe: http://ohase.untergrund.net/ Hedi
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.