Forum: Mikrocontroller und Digitale Elektronik Zeichenwirrwarr bei 128x128GLCD T6963


von Claus F. (koenigsnuesse)


Lesenswert?

Hallo Leute,

kann mir eventuell jemand helfen? Ich hab hier 4 Displays, die baugleich 
sind (T6963c, 128x128) und es tritt bei allen der selbe Fehler auf. 
Verdrahtung x-mal neu aufgebaut, jedesmal das selbe Ergebnis. Ich hab 
fast den Eindruck, daß die Pinbelegung der Diaplays anders ist, als auf 
dem Datenblatt angegeben. Nur wie findet man das raus, wie das dann 
angeschlossen werden muß?! Genau den selben Displaytyp findet man als 
Datenblatt nicht, hab nur eins, das einem ähnlichen Typ entspricht. Es 
handelt sich um das Display PVG121202B. Hat jemand zufällig das 
Datenblatt zur Hand? Laut Datenblatt vom T6963C stimmt das Pinout aber. 
Ich häng mal die Datei hier dran, eventuell hab ich ja da nen Wurm drin. 
Wundert euch nicht über die Auskommentierungen, hatte mit verschiedenen 
Displays rumprobiert, auch mit einem 4x20, mit einem 2x24, und einem 
Winstar WG12864A. Da ich hierfür immer die selbe Datei verwendet hab, is 
das ganze noch drin.

Ich hab versucht, einfach das ABC anzeigen zu lassen, weil bei den 
Wörtern, die ich versucht hab, immer was fehlte. Im Endeffekt waren vom 
ABC nur 8 Buchstaben übrig, die es sich bequemte, anzuzeigen, Zahlen 
zeigt es überhaupt nicht, und Sonderzeichen kommen auch nur 6.

also die Buchstaben, die es anzeigt, sind : ABCHIJKO, abchijko, und die 
Sonderzeichen sind : !()*#-

von spess53 (Gast)


Lesenswert?

Hi

>Ich hab fast den Eindruck, daß die Pinbelegung der Diaplays anders ist, als
>auf dem Datenblatt angegeben.

Unwahrscheinlich. Dann würde nichts funktionieren.

>Ich hab versucht, einfach das ABC anzeigen zu lassen, weil bei den
>Wörtern, die ich versucht hab, immer was fehlte.

Text- oder Grafikmode?

Ich tippe auf ein Timingproblem.

MfG Spess

von Claus F. (koenigsnuesse)


Lesenswert?

spess53 schrieb:
> Hi
>
>>Ich hab fast den Eindruck, daß die Pinbelegung der Diaplays anders ist, als
>>auf dem Datenblatt angegeben.
>
> Unwahrscheinlich. Dann würde nichts funktionieren.
>
>>Ich hab versucht, einfach das ABC anzeigen zu lassen, weil bei den
>>Wörtern, die ich versucht hab, immer was fehlte.
>
> Text- oder Grafikmode?

naja, mit
locate 1.1
lcd "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

kommt dann nur ABCHIJKO
was mich wundert, die anderen buchstaben werden einfach verschluckt, 
kein abstand dazwischen ...

>
> Ich tippe auf ein Timingproblem.
hab einfach nen code aus den beispielen genommen, also bei
$crystal = 1000000
funktionierts, so wie oben beschrieben, bei irgendwas anderem funzt rein 
garnix

mfg KoenigSnuesse

von spess53 (Gast)


Lesenswert?

Hi

>hab einfach nen code aus den beispielen genommen

Welchen Code, aus welchen Beispielen?

> also bei $crystal = 1000000 funktionierts, so wie oben beschrieben, bei
>irgendwas anderem funzt rein garnix

Und mit welcher Frequenz läuft dein unbekannter Controller?

Lass dir nicht alles aus der Nase ziehen.

MfG Spess

P.S. Deine Shift-Taste klemmt.

von Claus F. (koenigsnuesse)


Lesenswert?

habs mit nem atmega8 und nem atmega32 versucht, mit dem selben ergebnis.

grins die shift taste klemmt nicht, ich tipp meistens nur in 
kleinbuchstaben, geht schneller ... und ich bin kein tipp ass ...

im ponyprog hab ich die fusebits folgendermaßen gehakt:
BOOTSZ1 Haken, BOOTSZ0 Haken
SUT0 Haken, CSEL3 Haken, CSEL2 Haken, CSEL1 Haken

programmieren mach ich mit bascom

ich poste mal den code dazu:

[code]
$regfile = "m8def.dat"
$crystal = 1000000
$hwstack = 128
$swstack = 128
$framesize = 128
Config Graphlcd = 128 * 128 , Dataport = Portd , Controlport = Portb , 
Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8
Waitms 500
Config Adc = Single , Prescaler = Auto
Start Adc
Cursor Off
Cls
Dim U As Word , V As Word , W As Word                       'Spannung 
1-3  ADC 0-2
Dim X As Word , Y As Word , Z As Word                       'Strom 1-3 
ADC 3-5
Dim Ua As Single , Ub As Single , Uc As Single              'V 1-3
Dim Ia As Single , Ib As Single , Ic As Single              'A 1-3
Dim Zeile1 As String * 20                                   'Ausgabe 
Display Zeile 1
Dim Zeile2 As String * 23                                   'Ausgabe 
Display Zeile 2
Dim Txtua As String * 5                                     'Zeilenteil 
1 Zeile 1
Dim Txtub As String * 5                                     'Zeilenteil 
2 Zeiel 1
Dim Txtuc As String * 5                                     'Zeilenteil 
3 Zeile 1
Dim Txtia As String * 6                                     'Zeilenteil 
1 Zeile 2
Dim Txtib As String * 6                                     'Zeilenteil 
2 Zeile 2
Dim Txtic As String * 6                                     'Zeilenteil 
3 Zeile 2
Cls
Do
  U = Getadc(0)                                             'Spannung 1 
einlesen
  V = Getadc(1)                                             'Spannung 2 
einlesen
  W = Getadc(2)                                             'Spannung 3 
einlesen
  X = Getadc(3)                                             'Strom 1 
einlesen
  Y = Getadc(4)                                             'Strom 2 
einlesen
  Z = Getadc(5)                                             'Strom 3 
einlesen
  Ua = U * 0.02933                                          'Kalkulation 
ADC 0 zu Spannung 1  30V
  Ub = V * 0.05865                                          'Kalkulation 
ADC 1 zu Spannung 2  60V
  Uc = W * 0.02933                                          'Kalkulation 
ADC 2 zu Spannung 3  30V
  Ia = X * 0.000978                                         'Kalkulation 
ADC 3 zu Strom 1
  Ib = Y * 0.000978                                         'Kalkulation 
ADC 4 zu Strom 2
  Ic = Z * 0.000978                                         'Kalkulation 
ADC 5 zu Strom 3
  Txtua = Fusing(ua , "#.##") 
'Stellenbegrenzung Spannung 1
  Txtub = Fusing(ub , "#.##") 
'Stellenbegrenzung Spannung 2
  Txtuc = Fusing(uc , "#.##") 
'Stellenbegrenzung Spannung 3
  Txtia = Fusing(ia , "#.###") 
'Stellenbegrenzung Strom 1
  Txtib = Fusing(ib , "#.###") 
'Stellenbegrenzung Strom 2
  Txtic = Fusing(ic , "#.###") 
'Stellenbegrenzung Strom 3
  Txtua = Left(txtua , 5)
  Txtub = Left(txtub , 5)
  Txtuc = Left(txtuc , 5)
  Txtia = Left(txtia , 5)
  Txtib = Left(txtib , 5)
  Txtic = Left(txtic , 5)
  Zeile1 = Txtua + "V " + Txtub + "V " + Txtuc + "V "
  Zeile2 = Txtia + "A " + Txtib + "A " + Txtic + "A "
  Locate 3 , 3
  Lcd "!§$%&/()=?*ÖÄÜ'#_:;,.-<>|^°¿"
  Locate 5 , 3
  Lcd "A1a2a3a4a5a6a7a8a9a0a"
  Locate 7 , 3
  Lcd Zeile1
  Locate 9 , 3
  Lcd Zeile2
  Locate 11 , 3
  Lcd "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  Locate 13 , 3
  Lcd "abcdefghijklmnopqrstuvwxyz"
Loop
End

[code]

von Wanzenprofi (Gast)


Lesenswert?

Claus Feuerstein schrieb:
> SUT0 Haken, CSEL3 Haken, CSEL2 Haken, CSEL1 Haken

Hmmm das sind nicht die Standardwerte für den internen RC Schwinger, 
oder?

> $crystal = 1000000

Und du bist gaaaaanz sicher, dass dein AVR mit 1MHz rennt?
Setz den Wert mal auf 8M und berichte, wie's damit läuft.

von Claus F. (koenigsnuesse)


Lesenswert?

WAU, Suuuper, mit dem mega32 auf 16MhZ gehts super. Danke für die Hilfe.

das mit den fusebits hab ich anscheinend noch net kapiert. kommt zeit 
kommt rat ...

nochmals danke an alle

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.