Hey Leute, Ich habe mir ein Grafik-Display (KS108)gekauft und wollte mit einem ATmega8 ansteuern. Leider macht es nicht was es soll. Grafik-Display.bas $regfile = "m8def.dat" $crystal = 8000000 $lib "glcdKS108.lib" Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , Ce = 2 , Ce2 = 3 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 4 '============================================================== 'Grafikdisplay KS108 | Atmega8 ' 01| VSS GND ' 02| VDD +5V ' 03| Vo Kontrast 10K-Poti +10K gegen Masse ' 04| RS PortB.0 ' 05| R/W PortB.1 ' 06| E PortB.4 ' 07-14| DB0-DB7 PortD.0-PortD.7 ' 15| CS1 PortB.2 ' 16| CS2 PortB.3 ' 17| Reset PortB.5 ' 18| Vout 10K-Poti Abgreifpunkt ' 19| BLA Nicht Belegt ' 20| BLK Nicht Belegt '============================================================== Cls Setfont Font8x8 do Lcdat 1 , 1 , "Hallo" loop End $include "font8x8.font" Habt ihr einen Rat für mich?
Patrick D. schrieb: > Leider macht es nicht was es soll. Es macht wahrscheinlich das, was es soll (d.h. das, was Du programmiert hast), aber das ist wahrscheinlich nicht das, was Du willst.
Hi >' 03| Vo Kontrast 10K-Poti +10K gegen Masse ... >' 18| Vout 10K-Poti Abgreifpunkt Was meinst du mit 'Abgreifpunkt'? MfG Spess
> Es macht wahrscheinlich das, was es soll (d.h. das, was Du programmiert hast),
aber das ist wahrscheinlich nicht das, was Du willst.
Toll. Das Hilft mir nicht weiter :(
Trotzdem zeigt es nichts an.
Was ich weigendlich machen kann ist nur der Kontrast zu ändern :(
:
Bearbeitet durch User
Hi
>Ich meine den Punkt, wo ich denn Widerstandswert einstelle
???
Die Kontrasteinstellung erfolgt wie im Anhang. Und da ist kein Anschluss
nach Masse
MfG Spess
Hallo Patrick , $lib "glcdKS108.lib" --> ist für KS108-Controller Config Graphlcd = 128 * 64sed --> ist für SED-Controller merkst Du etwas??? Liberist
Liberist schrieb: > $lib "glcdKS108.lib" --> ist für KS108-Controller > Config Graphlcd = 128 * 64sed --> ist für SED-Controller arg, gutes Auge, ein gern gemachter Fehler (ist mir auch schon passiert)
:
Bearbeitet durch User
Ach so, ich habe die Kontrasteinstellung von Bascom- Einsteigerbuch "Einfacher Einstieg in die Elektronik mit AVR-Mikrocontroller und BASCOM" Ich kann mal die Variante probieren. mgf Patrick_cpp
:
Bearbeitet durch User
Ich habe die Config Graphlcd = 128 * 64sed ... entfernd, mägert der Compiler rum, auch wenn ich das "sed" entferne Also was muss ich nun Eingeben das funktioniert.
Ich habe mein Programm geändert aber es zeigt immer noch kein Erfolg: $regfile = "m8def.dat" $crystal = 8000000 $lib "glcdKS108.lib" '============================================================== 'Grafikdisplay KS108 | Atmega8 ' 01| VSS GND ' 02| VDD +5V ' 03| Vo Kontrast 10K-Poti +10K gegen Masse ' 04| RS PortB.0 ' 05| R/W PortB.1 ' 06| E PortB.4 ' 07-14| DB0-DB7 PortD.0-PortD.7 ' 15| CS1 PortB.2 ' 16| CS2 PortB.3 ' 17| Reset PortB.5 ' 18| Vout 10K-Poti Abgreifpunkt ' 19| BLA Nicht Belegt ' 20| BLK Nicht Belegt '============================================================== Cls Do Locate 1 , 1 Lcd "Hallo" Loop End
Hi Der KS0108 ist der wohl einfachste Displaycontroller, der mir je untergekommen ist. Beim Einschalten, ohne Programm, (mit H an Reset) sollte eine Anzeige (Pixelmuster) zu sehen sein. MfG Spess
Hallo Patrick, mal an so etwas gedacht $hwstack = xxx ' Hardware Stack $swstack = xxx ' Software Stack $framesize = xxx ' Framesize xxx anpassen (64) oder evtl. größer ???
Ich habe $hwstack, $swstack und $framesize reingearbeitet, aber keine Wirkung :( Auch wenn ich FuseByte benutze, keine Wirkung $prog &HFF , &H44 , &HD9 , &H00 ' generated. Take care that the chip supports all fuse bytes. $regfile = "m8def.dat" $crystal = 8000000 $lib "glcdKS108.lib" $hwstack = 64 $swstack = 64 $framesize = 64 '============================================================== 'Grafikdisplay KS108 | Atmega8 ' 01| VSS GND ' 02| VDD +5V ' 03| Vo Kontrast 10K-Poti +10K gegen Masse ' 04| RS PortB.0 ' 05| R/W PortB.1 ' 06| E PortB.4 ' 07-14| DB0-DB7 PortD.0-PortD.7 ' 15| CS1 PortB.2 ' 16| CS2 PortB.3 ' 17| Reset PortB.5 ' 18| Vout 10K-Poti Abgreifpunkt ' 19| BLA Nicht Belegt ' 20| BLK Nicht Belegt '============================================================== Cls Do Locate 1 , 1 Lcd "Hallo" Loop End
Jens W. schrieb: > Braucht das Display keine Init-Funktion? Das frage ich mich auch und es würde mich schon wundern. Und am Kontrast scheint auch was faul zu sein, Poti gegen Masse wäre etwas falsch bei dem Display.
Also ich habe mein Programm Initlcd eingeben und den Poti an Betriebsspannung (+5V) gezogen, aber nichts
So, ich habe jetzt stat ATmega 8 gegen ATmega32 ausgetauscht und neu verdrahtet. Und immernoch kein Text :( $PROG &HFF,&H04,&H47,&H00' generated. Take care that the chip supports all fuse bytes. $regfile = "m32def.dat" $crystal = 8000000 $lib "glcdKS108.lib" $hwstack = 64 $swstack = 64 $framesize = 40 initlcd '============================================================== 'Grafikdisplay KS108 | Atmega32 ' 01| VSS GND ' 02| VDD +5V ' 03| Vo Kontrast 10K-Poti gegen +5V ' 04| RS PortC.1 ' 05| R/W PortC.0 ' 06| E PortC.2 ' 07-14| DB0-DB7 PortA.0-PortA.7 ' 15| CS1 PortC.7 ' 16| CS2 PortC.6 ' 17| Reset PortC.5 ' 18| Vout 10K-Poti Seite ' 19| BLA Nicht Belegt ' 20| BLK Nicht Belegt '============================================================== Cls Do Locate 1 , 1 Lcd "Hallo" Loop End
:
Bearbeitet durch User
Patrick D. schrieb: > So, ich habe jetzt stat ATmega 8 gegen ATmega32 ausgetauscht und neu > verdrahtet. Naja, Austausch des Controllers behebt ja auch keine Software- und/oder Hardwarefehler der Peripherie. Prüfe zunächst doch mal ob alle Verbindungen zwischen Display und Controller stimmen. Nutze dazu das Datenblatt zu deinem Display und nicht eine Anschlussbelegung, die du in einem Buch/Webseite/Paper gefunden hast. Wenn das erstmal stimmt kannst du dich der Software widmen.
:
Bearbeitet durch User
Es funktioniert :D Fehler bei meiner Verdrahtung Pin 14 von Display wahr auf Pin 11 von ATmega32 Danke an Alle die mein Problem gesucht haben. mfg Patrick_cpp
:
Bearbeitet durch User
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.