Hallo, ich bin dabei über einen 80c535 Microcontroller ein Grafikdisplay (240x64 Pixel) anzusteuern. Den obrigen Quellcode hab ich der Website von HANTRONIX entnommen und meiner Konfiguration angepasst! Also das heißt: Die Datenleitungen von D0-D7 sind an Port 1, C\D\ ist an P4.0, Reset an 4.1, WR\ an P4.2, RD\ an P4.3 und CE\ an 4.4! Die Stromversorgung funktioniert auch schon einwandfrei. Mein Problem besteht nun darin warum das Display nicht die Grafikpunkte anzeigt die ich bei msg1 definiert hab! Vielleicht könnte einer der Profis mal schnell nen Blick draufwerfen! Ich denke das es nur ne Kleinigkeit ist... mfg xtra
weiß hierzu keiner was? Bin echt am verzweifeln! Hat vielleicht jemand schonmal mit einem 80c535 so ein Display angesteuert und hat zufällig noch den Code dafür? mfg xtra
Hier hast du meine Routine. Zur Not hab ich noch eine für den Adressbus. Mfg sascha
Hallo, da ich das Display lediglich zur Textanzeige benutzen will frage ich mich was ich in Sascha's Programm statt "LCD_CMD" und "LCD_DATA" einsetzen muss?! Sorry Leute für meine Fragen aber ich hab in der Schule leider zu wenig Unterricht damit ich da wirklich Durchblicken würde, aber ich würde halt gerne ein bisschen mehr mit meinem Microcontroller machen als eine billige Ampel... gruß xtra
Hallo, im Programm einfach wie folgt meine Routine benutzen: Am Anfang des Programms die Initialisierung aufrufen call INIT_LCD Dann im eigentlichen Programm, um einen Text anzuzeigen, folgendes eingeben: mov LCD_DATA+0,#0 ;setzt die Adresse nach oben mov LCD_DATA+1,#0 ;links im Display mov DPTR,#Text ;der anzuzeigende Text call STEXT Den Text definierst du so: Text: db "Das Display funktioniert",0 Das ist eigentlich alles. Mfg Sascha
Hallo, danke das mir wenigstens einer hilft, weil von meinem lehrer kann ich das nicht erwarten ;)... vielleicht stell ich mich einfach zu blöd an aber das bringt mir der assembler wenn ich deinen code, nachdem ich meine ports eingetragen hab, assemblier... irgendwie scheint mein assembler nicht mit dem LCD_DATA usw zurecht zu kommen... gruß xtra
Das LCD_CMD und LCD_DATA sind Speicherzuweisungen. Sprich der Assembler soll im internen Ram des µControllers Speicher unter diesem Namen bereitstellen. Die Zuweisung ist Assemblerabhängig. Da ich den AS von Alfed Arnold nutze, sieht es ungefähr so aus: segment Data org 030H ;interner Speicher ab Adresse 030H LCD_CMD ds 1 ; 1 Byte reservieren LCD_DATA ds 2 ; 2 Bytes reservieren Guck mal wie es bei dem A51 gemacht wird. Mfg Sascha
Hallo, ich denke das müsste man über den Daten-Pointer funktionieren... mal sehen was sich da machen läßt... werde berichten wenn ich was hinbekommen habe... mfg xtra
Den Datenpointer brauchst du nur, wenn du dazu ein externes Ram nimmst. Mfg Sascha
Hallo, ich habe jetzt mal deine Speicherzuweisungen durch register ersetzt! Aber leider funktioniert das immer noch nicht wirklich... habe den code nochmals angehängt, nun kommen auch keine fehler beim assemblieren mehr... weiß mir langsam nicht mehr zu helfen... thx xtra
Diese org 08000H Zuweisung......... Nutzt du ein Monitor-Programm auf dem 80C535-Board?? Mfg Sascha
Soll ich ehrlich sein? Ich trau michs garnich zu sagen... ;) nein eigentlich funktionierts nicht... :/ trotz deiner ganze mühe stimmt noch irgendwas nicht... wahrscheinlich liegts an diesen speicherzuweisungen die mein assembler am anfang auch nicht verstanden hat, ich werd das ganze mal mit in die schule nehmen und dort mal jemanden suchen der sich auch damit auskennt und der soll mir da mal helfen!! aber vielen vielen dank für deine hilfe wenigstens habe ich jetzt nen grundprogramm! gruß xtra ps: vielleicht melde ich mich nochmal...
Wie schon einmal gefragt, nutzt du ein Monitorprg.? Mfg Sascha
ja, ich hab ja son microcontrollerboard auf dem der microcontroller selber drauf ist und einmal flashrom und einmal ram jeweils 32kb. um ein programm zu testen lad ich die assemblierte obj-datei mit dem monitorprogramm mon51 in das ram, deshalb ist ja auch die anweisung org 8000 in dem programm... mfg xtra
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.