Hallo! Ich möchte ein LCD-Display 162B von Displaytech (16x2 Characters) zum Laufen bringen. Hat jemand eine funktionierende Init-Routine? Ich verwende einen ATMega8! Vielen Dank! Ledi
Versuch die LCD-LIB von Peter Fleury[1]. Damit bin ich immer ganz gut gefahren. Gruß Skriptkiddy [1] http://homepage.hispeed.ch/peterfleury/avr-software.html
hm, ich meine, so etwas schon mal hier im Forum gesehen zu haben. Man sollte vielleicht mal endlich eine Suchfunktion einbauen, oder ein Tutorial erstellen?
Gast
#1990567
Nach eingehender Prüfung konnte ich bis jetzt keinen Fehler feststellen. Anbei mein Schaltplan, das Datenblatt und der verwendete Initialisierungscode. Der Kontrast des Displays lässt sich regeln, wird aber nur in der 1. Zeile angezeigt.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | |
80 | |
81 | |
82 | |
83 | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |
90 | |
91 | |
92 | |
93 | |
94 | |
95 | |
96 | |
97 | |
98 | |
99 | |
100 | |
101 | |
102 | |
103 | |
104 | |
105 | |
106 | |
107 | |
108 | |
109 | |
110 | |
111 | |
112 | |
113 | |
114 | |
115 | |
116 | |
117 | |
118 | |
119 | |
120 | |
121 | |
122 | |
123 | |
124 | |
125 | |
126 | |
127 | |
128 | |
129 | |
130 | |
131 | |
132 | |
133 | |
134 | |
135 | |
136 | |
137 | |
138 | |
139 | |
140 | |
141 | |
142 | |
143 | |
144 | |
145 | |
146 | |
147 | |
148 | |
149 | |
150 | |
151 | |
152 | |
153 | |
154 | |
155 | |
156 | |
157 | |
158 | |
159 | |
160 | |
Gast
#1990945
Du solltest die unbenutzten Datenpins (DB0-DB3) auf GND legen. Offene Eingänge können jedes beliebige Potential annehmen. So kann es dann seind as die initialisierung mal klappt, und mal nicht.
> Du solltest die unbenutzten Datenpins (DB0-DB3) auf GND legen.
Hab ich gemacht! Hilft aber leider nicht.
Gast
#1991009
Hi >Du solltest die unbenutzten Datenpins (DB0-DB3) auf GND legen. Offene >Eingänge können jedes beliebige Potential annehmen. So kann es dann >seind as die initialisierung mal klappt, und mal nicht. Vor solchen Vorschlägen sollte man das Datenblatt lesen. Displaycontroller haben im allgemeinen einen integrierten Pull-Up-widerstand. Eine Verbindung nach GND ist da eher kontraproduktiv. Datenblatt vom KS0070: DB0~DB3 'During 4-bit bus mode open these pins' MfG Spess
Gast
#1991019
Deine Init-Routine sendet am Anfang anscheinend nur einmal das Function Set ans Display. Im Datenblatt steht aber, dass das dreimal nacheinander geschehen muss.
Heimo G. schrieb: > Ich möchte ein LCD-Display 162B von Displaytech (16x2 Characters) zum > Laufen bringen. Hat jemand eine funktionierende Init-Routine? Ich > verwende einen ATMega8! Hast du schon die beiden (ASM bzw. C) aus der Artikelsammlung getestet?
Die Displayanzeige funktioniert grundsätzlich. Allerdings erhalte ich in der 1. Zeile nur wirres Zeug (000/0000////<<<). Kann mir wer beim Function-Set helfen? Ich komme damit nicht so ganz klar!
Heimo G. schrieb: > Die Displayanzeige funktioniert grundsätzlich. Allerdings erhalte ich in > der 1. Zeile nur wirres Zeug (000/0000////<<<). Wenn du prinzipiell eine Anzeige hast, dann liegt das Problem nicht mehr in der Init oder im Function Set. * Anzeigefunktion untersuchen * Nochmal die Verdrahtung kontrollieren, ob da nicht 2 Datenleitungen vertauscht wurden.
Habs schon!!! Ich habe die Init-Routine wie folgt geändert:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.
