Hallo zusammen, ich habe mich ein wenig mit den AVR's beschäftigt und da komme ich auch ganz gut vorran. Ich habe aber noch einige Probleme in meiner Schule. Da gibt es sowas wie einen Minicomputer wo ein 80535 drauf ist. Mein Lehrer hat gemeint es wäre schön wenn unsere Testboards damit laufen würden(Ampelanlage,Füllanlage,...)Also habe ich mich hingesetzt und das ganze an einem Simulator programmiert. Auf diesem Computer läuft ein Monitorprogramm was auf ein EPROM gespeichert ist und ich habe mit einem Terminalprog über die serielle Schnittstelle auch Kontakt. Was ich jetzt nicht verstehe ist das dieses EPROM laut Beschreibung des Monitorprogramms an Adresse 0 beginnen soll. Wie ist denn das gemacht ? Und muss ich dann mein Programm umschreiben damit ich es zum laufen bekomme ? Ich kann nicht so richtig erkennen wie der Speicher aufgeteilt ist und wie das Programm dann laufen soll. Ich kann leider den Lehrer der dieses Ding gebaut hat nicht mehr fragen also vielleicht hat von euch jemand ein paar Antworten für mich. Grüße Tom
Noch zu wenig Info.... In welcher Sprache programmierst Du? Vorneweg: Der AVR-Assembler ist nicht für den 80535 brauchbar, diese Prozessoren sind völlig unterschiedlich aufgebaut. Der 80535 ist ein MCS-51 Derivat. Das Eprom beginnt deshalb an Adresse 0, weil der 80535 bei einem Reset ab Adresse 0 startet - ohne diese Maßnahme würde der Prozessor ins leere laufen. Es wäre sehr wichtig, die Speicheraufteilung zu ermitteln, denn der 80535 kann Code im RAM ausführen - und so ist das sicherlich auch vorgesehen. Die Frage ist nun, in welchem Speicherbereich das RAM und evtl. zusätzliche Peripherie liegen. Dann wäre noch die Frage, was der Erbauer mit den ganzen Interrupt-Vektoren gemacht hat. Ich lege sie meistens per LJMP im EPROM ins RAM, damit ich sie auch nutzen kann. Eine weitere Möglichkeit besteht darin, daß das Board ein Nachbau ist - es gab, so weit ich weiß, mal ein 80535-Board von Elektor nebst zugehöriger Monitor-Software. Falls das aber ein kompletter Eigenbau ist, hilft eigentlich nur die Dokumentation weiter. Evtl. kann man anhand des Layouts nachvollziehen, wie die Adressbereiche aufgeteilt sind.
Hallo thkeis, ich programmiere in Assembler und ich habe auch ein Programm mit dem man den Code schreiben kann. Die Dateien werden mit der Endung .a51 gespeichert. Ich habe also mein Prog für eine Steuerung geschrieben, allerdings verstehe ich nicht so richtig wie es generell aussieht mit der Speicheraufteilung. Da gibt es Codesegmente und Data Segmente und dann lese ich auch noch das das EProm bei 0 anfängt. Das ganze Gerät ist ein totaler Eigenbau. Die Doku hat der Lehrer in eine 'bessere Welt' mitgenommen denn sie wird in der Schule nicht gefunden. Die Monitor Software heißr Monitor51 und ist glaube ich von einer Firma in Mainz. Ich hatte mich an die Vorstellung gewöhnt das der Code ins ROM kommt und die Daten ins RAM aber ich denke davon kann ich mich verabschieden. Ich habe auch noch einen kleinen Beitrag gefunden wo vielleicht etwas dabei, allerdings verstehe ich das nicht richtig. Kann ich jetzt einfach mein Prog über das Monitorprog laden und es läuft ?. Ich habe das mal mit angehängt.
hmmm- so ganz verstehe ich das auch nicht, der Kontext wäre auch nicht unwichtig. Das erwähnte Minimodul ist nicht zufällig das hier: http://www.phytec.com/modules/mm535.htm
das sieht genauso aus dieses Modul. Also ich denke das kann schon passen. Die Firma sitzt laut Vorwahl auch in Mainz. Allerdings ist mein Gerät aus dem Jahr 1988, da wird sich schon etwas getan haben aber ich hab mir mal das Hardware Manual heruntergeladen und schau mal. Super Tipp. Danke
Ich hab mir jetzt mal die Doku angeschaut allerdings hat sich wie befürchtet auch schon einiges getan. Ich kann mir nicht genau erklären wie der Speicher aufgeteilt ist. Darüberhinaus weiss ich auch nicht wie man ein Programm ausführen kann. Wenn man das Board einschaltet und gleichzeitig ein Terminalprogramm laufen hat habe ich Zugriff auf das eingebaute Terminalprogramm des Board aber wie laufen denn dann die Beispielprogs die ich geschrieben habe. Von aussen kann man nicht einstellen ob das Beispiel oder das Monitorprog gestartet wird. Vielleicht hat ja jemand noch einen guten Tipp für mich.
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.