LCDs und GLCDs anschließen und ansteuern (BASCOM)

Hi,

Bei mir läuft das Pollin Teil mit einem M168 und 18,432MHz ohne Probleme
und ohne an einer Lib herumzuschrauben.
das könnte evtl daran liegen das beim m168 gegenüber dem m8 einige IO-Register nicht mehr IO-mapped sondern Memory-mapped sind. Man benötigt also andere Assembler-Befehle um sie anzusprechen. Es könnte sich dadurch also zufällig das Timing positiv für das LCD verändern. Um das aber rauszubekommen müßte man alles genau unter die Lupe nehmen. ;)

Der UART ist zB nicht mehr mit einem Assembler-Befehl erreichbar sondern man muß vorher die Zieladresse in ein temporär benutztes Register laden und dann mit sts (Store to SRAM) das Byte in die Speicherstelle legen. Beim m8 geht das mit einem Maschinenzyklus mit dem out-Befehl.

Der m48/88/168/328/644/... hat also nicht nur eine höhere Geschwindigkeit wegen den möglichen 20MHz sondern auch Nachteile wegen der zusätzlich vorhandenen Register. Wenn man Pech hat und viele Sachen zusammentreffen kann er also mit 20MHz langsamer sein als ein m8 mit seinen 16MHz. Es ist immer ein abwägen der Vor- und Nachteile ;)

Gruß
Dino
 
Hallo Caargoo!

Es ist gut möglich, dass es bei dir ohne Modifikation funktioniert und bei Anderen nicht.

Das liegt mit Sicherheit an den Displays von Pollin!
Ich würde einfach mal vermuten, dass es "Rest- bzw. Fehlbestände" mit verschiedenen Eigenschaften sind. :wink:

Habe hier selber einige von den Displays und manchmal muss ich die CS-Leitungen tauschen, manchmal nur die A+K-Anschlüsse der Hintergrundbeleuchtung wechseln und so weiter.......

Machen wir uns also nichts vor.... die Displays sind günstig und funktionieren auch... aber eben jedes auf seine eigene Art und Weise. :cool:

Grüße,
Cassio
 
Nur so ;)
EA W404B-NLW
Code:
$lib "lcd_i2c.lib"
$regfile = "m32def.dat"
$crystal = 16000000

Const Pcf8574_lcd = &H40
Config Scl = Portc.0
Config Sda = Portc.1
Dim _lcd_e As Byte

Wait 1
Cls

_lcd_e = 128
Locate 1 , 1 : Lcd "Zeile 1                 04. Oktober 2011"
Locate 2 , 1 : Lcd "Zeile 2 geschrieben von DEAF BOY mit"

_lcd_e = 64
Deflcdchar 0 , 32 , 32 , 10 , 10 , 32 , 17 , 14 , 32
Locate 1 , 1 : Lcd "Zeile 3 BASCOM-AVR Version 2.0.7.1"
Locate 2 , 1 : Lcd "Zeile 4 http://www.avr-praxis.de " : Lcd Chr(0)
End
neuesbildvbcr.jpg
 
Nun ist KS108-Display dran.

Hat auch geklappt, nur zeigt es rechtsbündig :hmmmm:

Erledigt! CE1 und CE2 vertauscht!

DCP_0005.jpg

Code:
$lib "glcdKS108.LBX"
$include "font8x8.font"
$regfile = "m32def.dat"
$crystal = 16000000

'PORTA.0 = D/I
'PORTA.1 = R/W
'PORTA.2 = CE2
'PORTA.3 = CE1
'PORTA.4 = E
'PORTA.5 = RST
'PORTC   = D0-D7

Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Porta , Cd = 0 , Rd = 1 , Ce = 3 , Ce2 = 2 , Enable = 4 , Reset = 5

Setfont Font8x8

Cls
Wait 1
Lcdat 1 , 1 , "Zeile 1"
Lcdat 2 , 1 , "Zeile 2"
Lcdat 3 , 1 , "Zeile 3"
Lcdat 4 , 1 , "Zeile 4"
Lcdat 5 , 1 , "Zeile 5"
Lcdat 6 , 1 , "Zeile 6"
Lcdat 7 , 1 , "Zeile 7"
Lcdat 8 , 1 , "Zeile 8"
End
 
Hallo Deaf Boy!

Das dein Display kein FS-Pin hat ist nicht schlimm!
FS steht für "FontSelect", damit kann man bei vielen Displays mit T6963 Controller zwischen zwei integrierten Schriftbreiten wechseln (8x8 oder 8x6).

Hast du dir mal DIESEN BEITRAG angesehen?
Da geht es auch um ein Display mit dem T6963 Controller.


Grüße,
Cassio
Hallo Cassio.

ich habe mir ICL 7660 angeschafft und nach deinen Schaltplan angeschlossen. Poti 50K in der Mittelstellung eingestellt. Es leuchtet blau, aber sehr schwacher weißer Pixel und kein Text in Sicht.
Denkst du, GLCD ist hinüber?
 
Hallo !

Ich würde nicht gleich behaupten, dass dein GLCD defekt ist.....
Vielleicht reicht die negative Spannung nicht aus, wenn du den ICL7660 mit +5V versorgst? :hmmmm:

Du kannst den ICL7660 ja mal mit +9V versorgen..... Damit solltest du dann knapp -9V am Ausgang haben.
Hieraus ergibt sich dann eine Differenz von fast 14V für den Kontrast. Das sollte meistens völlig ausreichend sein.
ABER Bitte nicht vergessen BEIDE Massen der Spannungsquellen miteinander zu verbinden!

Kannst es ja mal probieren und dich dann noch mal melden..... positiv wie negativ. :wink:

Grüße,
Cassio
 
DM19264A-02 meine Erfahrung

Bei meinem kürzlich bestellten Display fiel die negative Kontrastspannung zu gering aus. Mit einem externen 7660 + 2x 10µF Elkos war dann endlich die Kontrastanpassung möglich. Ausgang des 7660 an Poti mit +5V, Schleifer an Vo und (trotzdem) Vee an Vo. Die im Zusammenhang mit dem Display beschriebenen darstellungsbedingten Kontrastprobleme konnte ich bisher nicht beobachten. Seltsam ist, dass Pin1 (GND) dann nicht unbedingt beschaltet werden muss. Keine Ahnung warum, aber es funktioniert so bei mir (sogar teilweise besser).

Allzu schnelle Änderungen mag das Display nicht, selbst wenn man etwas Hand an die .lib anlegt (den Wert bei @genus um +1 erhöhen).

Für den Preis kann man, so denke ich, mit den Einschränkungen leben.
 
Hallo AVRkarl!

Ich denke mal, zu beziehst dich mit deinem Text auf DIESEN BEITRAG !

Das ich "Probleme" mit einem leicht schwachen Kontrast habe kann natürlich daran liegen, dass ich den "Onboard-ICL7660" wieder angeschlossen habe. :wink:
Hast du dir meine Bilder vor und nach der Reparatur der Platine mal angesehen? Sieht deine Displayplatine genauso aus? Ich meine, die Eigenschaft mit den unterbrochenen Leiterbahnen?
Was macht denn deine Hintergrundbeleuchtung? Musstest du dafür auch eine Brück einlöten, oder hast du das auch extern gelöst?

EDIT:
Warum hast du denn eine Verbindung zwischen Vo und Vee gemacht? :hmmmm:
Wenn du die Leiterbahn am Vee-Pin nicht repariert hast, dann hat der Pin sonst sowieso kein Potential. :wink:

Das du GND an Pin_1 nicht anschließen brauchst, kommt mit Sicherheit durch den GND-Anschluss an der Hintergrundbeleuchtung. Die beiden Massen sind auf dem Display nämlich miteinander verbunden. :cool:
Ich würde aber den Pin_1 vorsichtshalber doch mit GND belegen.... falls du mal die Beleuchtung abklemmst.


Letztlich bin ich bei dem Display zum gleichen Urteil gekommen...... Für den Preis kann man mit den "Macken" schon ein wenig leben. :cool:

Grüße,
Cassio
 
Ich habe vergessen zu schreiben, dass ich die Verbindung wie von Dir vorschlagen gemacht habe und es trotzdem nicht funktioniert hat (da wahrscheinlich Vee zu gering). Und ja, ich habe die HG-Beleuchtung angeschlossen, ohne jedoch die Lötbrücke zu setzen. Das Display funktioniert trotzdem, auch wenn die HG-Beleuchtung überhaupt nicht angeschlossen ist. Interessant wäre es in der Tat die Lötbrücke wieder zu entfernen, aber ohne die Verbindung Vo Vee funktioniert es momentan nicht. Hast Du das Display noch und einen 7660? Würde mich interessieren, ob es auch bei anderen Displays so funktionieren kann. Vielleicht war auch der Onboard-ICL7660 in meiner Version von Anfang an defekt.

Viele Grüße,
Sebastian
 
Hi,

Seltsam ist, dass Pin1 (GND) dann nicht unbedingt beschaltet werden muss. Keine Ahnung warum, aber es funktioniert so bei mir (sogar teilweise besser).
aha ... und wenn beim Automotor die Kolbenringe hin sind dann braucht man auch nicht mehr tanken weil der Motor ja auch mit dem Öl läuft. Dann muß man nur noch Öl nachfüllen. Also die hälfte der Arbeit gespart ... oder so ?

Das würde ich NICHT tun weil es dann im LCD-Controller eine "Phantomspeisung" gibt die im schlimmsten Fall Elektroschrott erzeugt.

Gruß
Dino
 
@Dino

War kein Tipp für den praktischen Gebrauch. Ich fand es seltsam, dass es funktioniert und das sogar über Stunden (ohne Rauch und so ;)). Man würde ja meinen, dass so ein elementarer Anschluss für ein funktionierendes Display nicht unbeschaltet bleiben darf.

Viele Grüße,
Sebastian
 
Hi Sebastian,

wenn es nicht für den praktischen Gebrauch war ist es ja gut ;)
Ich fand es seltsam, dass es funktioniert und das sogar über Stunden (ohne Rauch und so ;)). Man würde ja meinen, dass so ein elementarer Anschluss für ein funktionierendes Display nicht unbeschaltet bleiben darf.
das wirst du bei sehr vielen Halbleitern finden. Man kann auch nen Atmel über die Schutzdioden der IO-Pins fremdversorgen. Ich hab da mal ne Schaltung für gesehen. Wenn man sehr wenig Strom rüberschickt dann geht das meißt auch gut. Das heißt aber nicht das es auch immer stabil funktioniert. Hier im Forum gibt es auch einen Beitrag in dem geschrieben steht das dabei ein LCD gestorben ist. War glaube ich nen DOG-LCD (DisplayOnGlas).

Es gibt in ICs/Transistoren/... immer parasitäre Halbleiterübergänge die durch die Fertigung entstehen. Das kann sogar bei einem Typ je nach Hersteller unterschiedlich sein. Wenn es also zB für ein IC mehrere Hersteller gibt dann kann es bei einem funktionieren und bei nem anderen Hersteller in einer Rauchwolke enden.

Wenn man solche Experimente macht und die Erkenntnisse in einer Schaltung einbaut, dann sollte man genau wissen was man da macht und von welchem Hersteller man das IC benötigt damit es klappt.

Ein ähnliches Phänomen gibt es zB auch bei TTL-ICs (74er-Reihe) in der CMOS-Version (zB 74HC14). Ich habe für ein Sensor-Pad auf HF-Basis solche Bausteine im analogen Bereich betrieben (das geht bei Treiberstufen). Es gingen aber nur Typen eines bestimmten Herstellers. Von anderen Herstellern hat die Schaltung nicht funktioniert. Wenn man ICs bestellt dann ist es aber immer ein Lotteriespiel von welchem Hersteller der Versender grade eingekauft hat.

Gruß
Dino
 
Hast Du das Display noch und einen 7660? Würde mich interessieren, ob es auch bei anderen Displays so funktionieren kann.


Hallo Sebastian!

Jepp, ich habe das Display noch und auch einen 7660 zur Hand.....
Jetzt aber extra dafür wieder einen Testaufbau herstellen, steht mir nicht gerade der Sinn nach. :wink:
Außerdem muss ich dann meine Lötbrücken erst wieder entfernen. Mal sehen....

Wenn mich nicht alles täuscht, dann kann man auf dem Display noch einen zweiten 7660 (in SMD) aufsetzen.
Zumindest sieht das von den Anschlüssen her so aus. Weiß ich jetzt aber nicht mehr so genau.


Letztendlich können wir wohl beaupten, dass die Displays alle irgendeine Macke haben müssen........
und trotzdem funktionstüchtig gemacht werden können. :wink:


Grüße,
Cassio
 
Letztendlich können wir wohl beaupten, dass die Displays alle irgendeine Macke haben müssen........
und trotzdem funktionstüchtig gemacht werden können. :wink:

Ja, das ist manchmal wie das Salz in der Suppe. Man hat es irgendwie und auch noch selber hinbekommen......:)

Vielleicht hilft die Option mit dem externen 7660 trotzdem dem ein oder anderen, der vor dem gleichen Problem stehen sollte. Mich hatte es mit Bestellung des 7660 etwa 4 Tage gekostet, das Ding endlich zum laufen zu bekommen. Hatte es schon fast aufgegeben.

@Dino. Das war mit als Hobbybastler nicht so bewusst. Ich bin eher zufällig darauf gestoßen und war erstaunt.

Viele Grüße,
Sebastian
 
Hi,
@Dino. Das war mit als Hobbybastler nicht so bewusst. Ich bin eher zufällig darauf gestoßen und war erstaunt.
man muß sich nur vorstellen das alle Bauteile in einem IC ja auf einem Halbleiterchip liegen. Wie soll man sie also voneinander isolieren damit es von der Funktion in der Schaltung her einzelne Bauteile sind? Das geht entweder über eingefügte Isolationsschichten oder über Halbleiterübegänge die in Sperrrichtung betrieben werden. Und genau diese Halbleiterübergänge in Sperrrichtung spielen bei der Phantomspeisung eines Chips die entscheidende Rolle. Die können je nach Hersteller anders angeordnet sein weil der Hersteller ja nur die Funktion des Chips gewährleistet. Wie er diese Funktion gewährleistet ist ja eigentlich nebensächlich solange der Chip innerhalb der Spezifikationen betrieben wird.

Gruß
Dino
 
EA DIP204B-6NLW - Chipset KS0073

Ich habe EA DIP204B-6NLW - Chipset KS0073 zum laufen gebracht. Nur Text. Symbols werden noch nicht getestet. ;)

eadip204b-6nlw93j2g.jpg eadip204b-6nlwc7k20.jpg

eadip204b-6nlw93j2g.jpg eadip204b-6nlwc7k20.jpg


Code:
  MEGA32                      EA DIP204B-6NLW
*--------*                    *-------------*
|        |        GND---------|VSS          |
|        |        +5V---------|VDD          |
|        |      10K-POTI------|VCI          |
|    PA.0|--------------------|E            |
|    PA.1|--------------------|RS           |
|        |        GND---------|R/W          |
|        |                    |             |
|    PC.7|--------------------|D7           |
|    PC.6|--------------------|D6           |
|    PC.5|--------------------|D5           |
|    PC.4|--------------------|D4           |
|    PC.3|--------------------|D3           |
|    PC.2|--------------------|D2           |
|    PC.1|--------------------|D1           |
|    PC.0|--------------------|D0           |
|        |      +5V--[47]-----|A            |
|        |        GND---------|C            |
*--------*                    *-------------*


$regfile = "m32def.dat"
$crystal = 4000000

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Porta.0 , Rs = Porta.1
Config Lcd = 20 * 4a , Chipset = Ks077

Wait 1
Cursor Off Noblink

Cls
Locate 1 , 1 : Lcd "Franz jagt im komp-"
Locate 2 , 1 : Lcd "lett verwahrlosten"
Locate 3 , 1 : Lcd "Taxi quer durch Bay-"
Locate 4 , 1 : Lcd "ern. " ; Chr(160) ; " DEAF BOY " : Lcd Chr(0)

End

Deflcdchar 0 , 32 , 32 , 10 , 10 , 32 , 17 , 14 , 32
 
Hallo DeafBoy!

Na, super!
Dann haben wir nun auch ein KS0073 in der Sammlung! :)


Danke dir, für den Beitrag mit Beispielprogrammcode, Anschlussplan und Bildern..... nebst Link zum Bezug!
Perfekt! :wink:


Grüße,
Cassio
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)