Forum: Mikrocontroller und Digitale Elektronik TG12864B-03 Darstellungsprobleme


von Franz M. (shadow010)


Angehängte Dateien:

Lesenswert?

hallo zusammen

Ich habe bei Pollin das TG12864B-03 erworben. 
http://www.pollin.de/shop/dt/NTc1OTc4OTk-/Bauelemente_Bauteile/Aktive_Bauelemente/Displays/LCD_Modul_TG12864B_03.html

Ich habe folgendes Programm geschrieben und auf den Atmega8 übertragen. 
Nun leider sieht es immer so aus wie im Anhang. Weiss einer ein Rat?



1
'Anschluesse des Grafik-Displays
2
'
3
'LCD  Pin            anschliessen an
4
'1    VSS            GND
5
'2    VDD            +5V
6
'3    V0 Kontrast    Mitte 10k Poti zw. Vout (Pin18 LCD) und GND
7
'4    RS             PortB.0
8
'5    R/W            PortB.1
9
'6    E              PortB.4
10
'7-14 DB0-DB7        PortD
11
'15   CS1            PortB.2
12
'16   CS2            PortB.3
13
'17   RSTB Reset     PortB.5
14
'18   Vout           Poti Seite
15
'19   BLA            ueber 150 Ohm an +5V
16
'20   BLK            GND'
17
18
19
$regfile = "m8def.dat"
20
'$crystal = 100000
21
$crystal = 800000
22
$hwstack = 32
23
$swstack = 10
24
$framesize = 40
25
26
$lib "glcdKS108.lib"
27
28
'Grafik-Display mit Anschlluessen beschreiben:
29
Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , Ce = 2 , Ce2 = 3 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 4
30
31
Dim X As Byte , Y As Byte , I As Byte
32
33
Cls                                                   'Display Loeschen
34
'wait 1
35
36
'Grosse Zeichen
37
Setfont Font16x16
38
'4 Zeilen a 8 Zeichen moeglich
39
'LCDAT zeile, spalte, value   Text/variable/Konstante schreiben
40
'Bei 16x16 ist Zeile = 1 bis 7 spalte in Pixel
41
Lcdat 3 , 24 , "Hallo"
42
Lcdat 6 , 40 , "AVR"
43
Wait 3
44
Cls
45
46
'kleine Zeichen
47
Setfont Font8x8
48
'8 Zeilen a 16 Zeichen moeglich
49
'LCDAT zeile, spalte, valiue     Text/variable/Konstante schreiben
50
'bei Font8x8 ist zeile = 1 bis 8 spalte in Pixel
51
Lcdat 1 , 1 , "Erste Zeile"
52
53
'Inverse mit Lcdat zeile, spalte, value, Farbe
54
Lcdat 2 , 1 , "invers" , 1                                'Invers Textdarstellung
55
56
Lcdat 4 , 80 , "rechts"
57
58
For I = 1 To 10
59
   Lcdat 5 , 8 , I , 0
60
   Wait 1
61
Next I
62
Wait 1
63
64
'Linie mit Line (x1,y1)-(x2,y2), Farbe
65
Line(0 , 63) -(127 , 0) , 1                                 'Line
66
Wait 2
67
Line(0 , 63) -(127 , 0) , 0                                 'Linie loeschen
68
Wait 1
69
70
'Kreiszeichnen mit Circle(x,y),radius,Farbe
71
Circle(20 , 50) , 5 , 1                                     'Kreis
72
73
'Punktsetzten mit Pset x, y, Farbe
74
Pset 5 , 50 , 1                                             'Punkt setzen
75
Wait 2
76
Pset 5 , 50 , 0                                             'Punkt loeschen
77
78
'Für Smiley:
79
Pset 18 , 49 , 1                                            'Punkt setzten
80
Pset 22 , 49 , 1
81
Line(19 , 53) -(21 , 53) , 1
82
Pset 18 , 52 , 1
83
Pset 22 , 52 , 1
84
85
Wait 1
86
87
'Ausgefüllter Kreis
88
For Y = 0 To 15
89
   Circle(60 , 40) , Y , 1
90
   Waitms 100
91
Next
92
Wait 3
93
94
'Ausgefüllter Kreis löschen
95
For Y = 0 To 15
96
   Circle(60 , 40) , Y , 0
97
   Waitms 100
98
Next
99
Wait 2
100
101
102
103
'Mit GLCDCMD können Kommandos an das Display gesendet werden
104
Glcdcmd &H3E , 1 : Glcdcmd &H3E , 2                         'Beide Display aus
105
Wait 1
106
Glcdcmd &H3F , 1 : Glcdcmd &H3F , 2                         'Beiden an
107
108
'Kreuz zeichnen
109
Line(115 , 63) -(125 , 53) , 1                              'Linie
110
Line(115 , 53) -(125 , 63) , 1                              'Linie
111
112
Wait 5
113
114
115
116
'Grafik anzeigen:
117
Showpic 0 , 0 , Bild1                                       'Grafik anzeigen
118
End
119
120
121
122
'Zeichensatzdatei(en)
123
$include "font8x8.font"
124
$include "font16x16.font"
125
126
'Bilderdatei einfühgen
127
Bild1:
128
$bgf "Bild1.bgf"

von perlbastel (Gast)


Lesenswert?

Datenleitungen verdreht?

von Franz M. (shadow010)


Lesenswert?

danke für die Antwort habe die Ltgs nochmals nachgeprüft aber keinen 
Fehler gefunden.

Gruss

von spess53 (Gast)


Lesenswert?

Hi

>Nun leider sieht es immer so aus wie im Anhang. Weiss einer ein Rat?

Und an welcher Stelle von deinem Programm?

MfG Spess

von Franz M. (shadow010)


Lesenswert?

schon ab dem moment wo ich die Speissung anlega.
Gruss

von spess53 (Gast)


Lesenswert?

Hi

>schon ab dem moment wo ich die Speissung anlega.

Ich frage mich immer, warum man so etwas erst merkt, wenn man schon ein 
(mehr oder weniger) großes Programm geschrieben hat.

Also teste mal, was das Display nach der Initialisierung und nach einem 
CLS anzeigt.

MfG Spess

von Franz M. (shadow010)


Lesenswert?

Das heisst du würdest das Display so testen?
Gruss
1
'Anschluesse des Grafik-Displays
2
'
3
'LCD  Pin            anschliessen an
4
'1    VSS            GND
5
'2    VDD            +5V
6
'3    V0 Kontrast    Mitte 10k Poti zw. Vout (Pin18 LCD) und GND
7
'4    RS             PortB.0
8
'5    R/W            PortB.1
9
'6    E              PortB.4
10
'7-14 DB0-DB7        PortD
11
'15   CS1            PortB.2
12
'16   CS2            PortB.3
13
'17   RSTB Reset     PortB.5
14
'18   Vout           Poti Seite
15
'19   BLA            ueber 150 Ohm an +5V
16
'20   BLK            GND'
17
18
19
$regfile = "m8def.dat"
20
'$crystal = 100000
21
$crystal = 800000
22
$hwstack = 32
23
$swstack = 10
24
$framesize = 40
25
26
$lib "glcdKS108.lib"
27
28
'Grafik-Display mit Anschlluessen beschreiben:
29
Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , Ce = 2 , Ce2 = 3 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 4
30
31
Dim X As Byte , Y As Byte , I As Byte
32
33
Cls        
34
35
End
                                           'Display Loeschen

von spess53 (Gast)


Lesenswert?

Hi

>Das heisst du würdest das Display so testen?

Das wäre der erste Schritt. Wenn das schon nicht funktioniert hast du 
ein Problem.

MfG Spess

von Franz M. (shadow010)


Lesenswert?

Ich habe den code nun so umgestellt aber leider habe ich immer noch das 
selbe Bild

hab testweise einen anderen ATmega verwendet und einen Typgleichen LCD 
aber auch diese Kombination bringt den selben Fehler
1
$regfile = "m8def.dat"
2
'$crystal = 100000
3
$crystal = 800000
4
$hwstack = 32
5
$swstack = 10
6
$framesize = 40
7
8
'Einbinden von Grafik-Display-Routinen:
9
$lib "glcdKS108.lib"
10
11
'Grafik-Display mit Anschlluessen beschreiben:
12
Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , Ce = 2 , Ce2 = 3 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 4
13
14
Dim X As Byte , Y As Byte , I As Byte
15
16
Initlcd
17
18
'Grosse Zeichen
19
Setfont Font8x8
20
'4 Zeilen a 8 Zeichen moeglich
21
'LCDAT zeile, spalte, value   Text/variable/Konstante schreiben
22
'Bei 16x16 ist Zeile = 1 bis 7 spalte in Pixel
23
Lcdat 3 , 24 , "Hallo"
24
Lcdat 6 , 40 , "AVR"
25
Wait 3
26
Cls
27
28
29
End
30
31
$include "font8x8.font"

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
Noch kein Account? Hier anmelden.