Forum: Mikrocontroller und Digitale Elektronik CF1395 LCD Info erbeten


von Gerhard O. (gerhard_)


Angehängte Dateien:

Lesenswert?

Moin,

Vor Jahren schenkte mir jemand in D zwei LCD Module mit der controller 
Bezeichnung CF1395. Es hat fünf Anschlüsse die entweder I2C oder Serial 
vermuten lassen. Leider waren meine bisherige Recherchen erfolglos. Es 
könnte sein, dass es von Pollin stammt. Allerdings suchte ich auch dort 
vergeblich nach Hinweisen. Man sieht keinerlei Pixel Metallisierungen im 
Hintergrund, so daß ich nicht einmal weiss ob es ein Character- oder 
Graphik LCD ist.

Auf CF1395 scheint kein LCD Controller zu hören. So ist zu vermuten, daß 
es sich auf das LCD Model selber bezieht.

Auf Grund der Kompaktheit ist es ein wünschenswertes LCD for 
Portabeleinsatz.

Es wäre nett von Euch mir Näheres mitzuteilen, falls Euch technische 
Daten bekannt sind. Es genügt mir minimal durchaus den Controllertyp zu 
wissen. Dann könnte man notfalls mit den Anschlüssen vorsichtig 
experimentieren.



Gruß,
Gerhard

von Lutz B. (lutzbroszio)


Lesenswert?

Auf dem zweiten Bild sieht es so aus, als ob der eigentliche Controller 
auf dem Flex PCB fehlt?

von Gerhard O. (gerhard_)


Angehängte Dateien:

Lesenswert?

Lutz B. schrieb:
> Auf dem zweiten Bild sieht es so aus, als ob der eigentliche
> Controller
> auf dem Flex PCB fehlt?

Hallo,

Der ist schon vorhanden. Der ist in der schwarzen Vergußmasse 
eingebettet.

Siehe neues Bild

Gruß,
Gerhard

von Christoph Z. (rayelec)


Lesenswert?

Das ist ein Grundig Ersatzteil (U.a. Autoradio GP99) und ja, es ist i2c 
mit PCF8576. Mit der Ersatzteilnummer findet man im Netz auch Schemata!

von Gerhard O. (gerhard_)


Lesenswert?

Christoph Z. schrieb:
> Das ist ein Grundig Ersatzteil (U.a. Autoradio GP99) und ja, es
> ist i2c
> mit PCF8576. Mit der Ersatzteilnummer findet man im Netz auch Schemata!

Vielen Dank für Deinen kritischen bzw. bahnbrechenden und 
richtungsweisenden Hinweis. Ich habe zwar in manual.lib kein direktes 
Schaltbild gefunden. Aber man kann aus diesen Unterlagen nun vermuten, 
daß es ein Autoradio LCD sein könnte und höchstwahrscheinlich mit 
16-Segment Stellen und Annunciators ausgerüstet ist.

Daß der Controller ein PCF8576CT sein könnte, ist sehr wahrscheinlich, 
weil alle 5 Zuleitungen in die Eckenregion des Dies münden, die Anhand 
des Datenblattes extern angeschlossen werden müssen. Da die Zuleitungen 
gut sichtbar sind, sollte die Datenblatt Pinzuordnung sicher 
feststellbar sein. Den PCF8577 kenne ich ohnehin schon gut.

Anhand der relativen Position zum Datenblatt Anschluss sollte es also 
möglich sein die externen Zuleitungen zu identifizieren. Dann kann ich 
den I2C Sniffer zwecks Kommunikationswilligkeit und Adresse Bestätigung 
einsetzen. Falls ich dann funktionierende I2C Kommunikation habe, ist 
der Rest Kinderspiel.

Ich werde dann berichten und Infos meinerseits zur Verfügung stellen.

Gruß,
Gerhard

Nachtrag:

Ich sah mir noch einige Serviceunterlagen an. Bei einem Gerät war die 
Ersatzteil Nummer mit 19720-239.00 meiner sehr ähnlich. WKC1703.

https://rapgenic.github.io/assets/files/grundig_wkc_1703,1704,3703,3704rs_rds.pdf

Das folgende ist also alles Spekulation:-)

Die Anschlußbelegung (S38) könnte also so sein:

1 Vlcd
2 Vss
3 Vdd
4 SCL
5 SDA

Die VLcd wird dort über einen PNP separat eingeschaltet. Vermutlich hat 
diese Schaltungsweise den Zweck das LCD erst bei Erreichen einer 
Mindestspannung freizugeben. Die Vdd 5V werden zusätzlich über 100 Ohm 
und 47uF "sanft" hochgefahren.

Das ist schon mal ein guter Anfang. Ob das LCD für meine Projekte 
geeignet ist, läßt sich erst nach der Inbetriebnahme, mit allen 
Segmenten eingeschaltet, herausfinden.

: Bearbeitet durch User
von Arne R. (ebps)


Lesenswert?

Moin Gerhard,

Gerhard O. schrieb:
> Vor Jahren schenkte mir jemand in D zwei LCD Module mit der controller
> Bezeichnung CF1395. Es hat fünf Anschlüsse die entweder I2C oder Serial
> vermuten lassen. Leider waren meine bisherige Recherchen erfolglos. Es
> könnte sein, dass es von Pollin stammt.

Bei Pollin gab es vor gut 20 Jahren das "DSM-0822A", das sieht sehr 
aehnlich aus, allerdings steht bei meinem "CF1382" drauf: 
https://elektronik-kompendium.de/public/arnerossius/bastel/dsm0822a.htm

von Vanye R. (vanye_rijan)


Lesenswert?

> Bei Pollin gab es vor gut 20 Jahren das "DSM-0822A", das sieht sehr

Yep, das hab ich damals auch gekauft. Waren haesslich aussehende 16Seg 
mit I2C. Einfach anzusteuern, aber halt sehr haesslich.

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Moin,

Vielen Dank für den Link und Kommentare. Ja, sehr nützlich scheint es 
nicht zu sein. Dot Matrix wäre mir lieber gewesen. Aber ausprobieren 
möchte ich es schon gerne.

Mir ist aufgefallen, daß das Pinout beim DSM-0822 unterschiedlich zum 
Autoradio Schaltplan ist.

Ich habe gestern mit dem Fluke87 in Dioden Modus die Zuleitungen im 
umgepolten Zustand untersucht. Die CKS-1302 Anschluss Konvention scheint 
zu passen. Zwischen den Masse Pin und SDA/SCL pins waren 0.75V, zwischen 
Vss und Vdd 0.58V und der letzte auch so um die 0.7V. Da die ersten 
beiden Pins gleiche Dioden Flussrichtungs-Spannungen aufwiesen scheinen 
das in der Tat die I2C Anschlüsse zu sein.

Ich habe dann vorsichtig strombegrenzte 3V an die Vdd/Vss Pins 
angeschlossen und es floss etwas mehr als 120uA. Ich werde also 
versuchen es mit einem Nano anzusteuern.

Wie dem auch alles sei, bin ich Dank Eurer Aller Hilfe beträchtlich 
weitergekommen. Das sieht nun schon viel appetitlicher aus:-)


Grüße,
Gerhard

: Bearbeitet durch User
von Vanye R. (vanye_rijan)


Lesenswert?

> Ich habe dann vorsichtig strombegrenzte 3V an die Vdd/Vss Pins
> angeschlossen und es floss etwas mehr als 120uA.

Ich hab noch so positiv in Erinnerung das dieses Teil sowohl mit 3V3 wie 
auch 5V funktioniert hat. (also Praxis, nicht Datenblatt)

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Vanye R. schrieb:
>> Ich habe dann vorsichtig strombegrenzte 3V an die Vdd/Vss Pins
>> angeschlossen und es floss etwas mehr als 120uA.
>
> Ich hab noch so positiv in Erinnerung das dieses Teil sowohl mit 3V3 wie
> auch 5V funktioniert hat. (also Praxis, nicht Datenblatt)
>
> Vanye

Naja, ich laß mich überraschen. Viel Arbeit sollte das Programm nicht 
machen. Ich kenne mich ja mit dem PCF8577 etwas aus. Die Segment 
Zuordnung wird auch nicht zu umständlich sein, vermute ich.

Der erste Test werde ich mit dem I2C-Sniffer machen, um die 
programmierte Adresse zu erkunden. Danach ist alles Kinderspiel.

Jedenfalls war Christophs Erwähnung des PCF8576 für mich sehr nützlich.

Fortsetzung folgt.

Gerhard

von Vanye R. (vanye_rijan)


Lesenswert?

> Die Segment Zuordnung wird auch nicht zu umständlich sein, vermute ich.

Noe, kannst du auf einer Arschbacke absitzen. :-D
1
/* Aufbau der 16Segment Anzeige */
2
typedef struct LCDseg {
3
   char text[8];
4
   /* Bit0 = Strich 2 */
5
   /* Bit1 = RDS      */
6
   /* Bit2 = Strich 3 */
7
   /* Bit3 = NC       */
8
   /* Bit4 = Komma    */
9
   /* Bit5 = TP       */
10
   /* Bit6 = TA       */
11
   /* Bit7 = StereoKringel */
12
   unsigned char symbol1;
13
   /* Bit0 = 1        */
14
   /* Bit1 = 3        */
15
   /* Bit2 = 2        */
16
   /* Bit3 = 4        */
17
   /* Bit4 = Strich 1 */
18
   /* Bit5 = 6        */
19
   /* Bit6 = FM       */
20
   /* Bit7 = 5        */
21
   unsigned char symbol2;
22
} LCDseg16;
23
24
/* Inhalt der Anzeige */
25
LCDseg16 lcd16;
26
27
/* Ascii-Zeichensatz von 0x20 bis 0x5f fuer das 16 Segment LCD */
28
/* von Pollin                                                  */
29
const unsigned char zeichen16[128] = {
30
      0x00,0x00,0x01,0x20,0x80,0x20,0x25,0x3d, 
31
      0xad,0xb5,0xec,0x37,0x3b,0x71,0x00,0x02, 
32
      0x00,0x42,0x42,0x00,0x66,0x66,0x24,0x24, 
33
      0x40,0x00,0x20,0x04,0x01,0x00,0x40,0x02, 
34
      0x9d,0x20,0x04,0x20,0x39,0x20,0x2d,0x20, 
35
      0xa4,0x20,0xad,0x00,0xbd,0x00,0x0c,0x20, 
36
      0xbd,0x20,0xad,0x20,0x28,0x00,0x48,0x00, 
37
      0x41,0x12,0x21,0x14,0x03,0x50,0x8c,0x8c, 
38
      0x3d,0x99,0xb8,0x8d,0x0d,0xbd,0x99,0x90, 
39
      0x0d,0xb9,0xb9,0x94,0xb8,0x80,0x99,0x95, 
40
      0xb0,0x0d,0x0d,0xb0,0x1d,0xa0,0xb0,0x42, 
41
      0x91,0x10,0x92,0x0b,0x92,0x49,0x99,0x99, 
42
      0xb8,0x8c,0x99,0xd9,0xb8,0xcc,0xa9,0x95, 
43
      0x0c,0xa0,0x91,0x19,0xd0,0x02,0xd0,0x49, 
44
      0x42,0x42,0x06,0x02,0x49,0x92,0x99,0x00, 
45
      0x02,0x40,0x00,0x99,0x40,0x40,0x01,0x10 
46
};
47
48
/* Umrechung ASCII nach 16Segment, Achtung nur GRossbuchstaben, Zahlen */
49
/* und Sonderzeichen, noch keine Bereichsueberpruefung */
50
void txt_PCF8576(unsigned char zeichen)
51
{
52
53
   zeichen-=0x20;
54
   zeichen=zeichen*2;
55
   sendbytei2c(zeichen16[zeichen]);
56
   sendbytei2c(zeichen16[zeichen+1]);
57
}

Vanye

von Vanye R. (vanye_rijan)


Angehängte Dateien:

Lesenswert?

Hab gerade noch einen alten Scan gefunden.

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Vanye R. schrieb:
> Hab gerade noch einen alten Scan gefunden.
>
> Vanye

Hallo Vanye,

jetzt bin ich wirklich sprachlos!

Mit Deiner Vorarbeit komme ich noch schneller zum Ziel. Vielen Dank!

Den Nano I2C Treiber habe ich auch schon geschrieben. Das Einzige was 
mich momentan aufhält ist die nicht vorhandene 5-pin 1mm Flex Buchse. 
Die muss ich mir entweder bestellen oder ich löte Drähte an. (Das 
Anlöten ist allerdings nicht meine erste Wahl)

Dein Datenblatt bestätigt übrigens die Pin Zuordnung zum PCF8576.

Ich werde bald von mir hören lassen.

Gruß,
Gerhard

von Gerhard O. (gerhard_)


Lesenswert?

Moin Vanye,

falls es Dir nicht zu umständlich ist, nachzuschauen, hätte ich da noch 
ein paar Fragen:

1) Welche Unteradresse ist im Modul durch die HW-Pins bestimmt? (Note1)

2) Da mindestens 140 Segmente im LCD angesteuert werden, MUX mode 1:4?

3) Welche Bias Einstellung? 1:2 oder 1:3 (Ausprobieren?)

Note 1: Da wird mein I2C Scanner so wie er für normale I2C Bausteine 
vorgesehen ist, wahrscheinlich beim PCF8576 nicht viel nützen. Da müßte 
ich ggf. dort auf die Unteradressen im CMD-REG Rücksicht nehmen.

Gruß,
Gerhard

von Vanye R. (vanye_rijan)


Lesenswert?

> falls es Dir nicht zu umständlich ist, nachzuschauen, hätte ich da noch
> ein paar Fragen:

Ja ja, kaum reicht man den kleinen Finger knabbern die Woelfe am Arm...
1
/* Ausgabe eines kompletten Datensatzes an das 16Segment LCD von Pollin */
2
void write_PCF8576(void)
3
{
4
  starti2c();
5
  sendbytei2c(0x70);           /* Init Display */
6
  sendbytei2c(0xe0);
7
  sendbytei2c(0xc8);
8
   
9
  sendbytei2c(0x00);           /* Datenpointer auf Anfang */
10
  txt_PCF8576(lcd16.text[0]);  /* Alle acht Zeichen ausgeben */
11
  txt_PCF8576(lcd16.text[1]);
12
  txt_PCF8576(lcd16.text[2]);
13
  txt_PCF8576(lcd16.text[3]);
14
  txt_PCF8576(lcd16.text[4]);
15
  txt_PCF8576(lcd16.text[5]);
16
  txt_PCF8576(lcd16.text[6]);
17
  txt_PCF8576(lcd16.text[7]);
18
19
  sendbytei2c(lcd16.symbol1);  /* Symbole im LCD setzen */
20
  sendbytei2c(lcd16.symbol2);
21
   
22
  stopi2c();
23
}

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Vanye R. schrieb:
>> falls es Dir nicht zu umständlich ist, nachzuschauen, hätte ich
> da noch
>> ein paar Fragen:
>
> Ja ja, kaum reicht man den kleinen Finger knabbern die Woelfe am Arm...
Guilty as charged;-)
> /* Ausgabe eines kompletten Datensatzes an das 16Segment LCD von Pollin
> */
> void write_PCF8576(void)
> {
>   starti2c();
>   sendbytei2c(0x70);           /* Init Display */
>   sendbytei2c(0xe0);
>   sendbytei2c(0xc8);
>
>   sendbytei2c(0x00);           /* Datenpointer auf Anfang */
>   txt_PCF8576(lcd16.text[0]);  /* Alle acht Zeichen ausgeben */
>   txt_PCF8576(lcd16.text[1]);
>   txt_PCF8576(lcd16.text[2]);
>   txt_PCF8576(lcd16.text[3]);
>   txt_PCF8576(lcd16.text[4]);
>   txt_PCF8576(lcd16.text[5]);
>   txt_PCF8576(lcd16.text[6]);
>   txt_PCF8576(lcd16.text[7]);
>   sendbytei2c(lcd16.symbol1);  /* Symbole im LCD setzen */
>   sendbytei2c(lcd16.symbol2);
>
>   stopi2c();
> }
>
> Vanye

Ein Großes Dankeschön!

Das erspart das Herumprobieren an diesen Einstellungen.

0xc8 bedeutet dann:
Bit-3 = Display enabled
Bit-2 = Bias ist 1:3
Bit-1+0 = 1:4 MUX Betrieb

0xe0 = Sub Address ist 0; S.A. ist also 0x70

Dann könnte es sofort richtig anzeigen.

"I will be back"

Gerhard

von Vanye R. (vanye_rijan)


Lesenswert?

Denk dran das du Kontrastspannung brauchst! ICh meine mich zu erinnern 
das die in der Praxis, zumindest bei Raumtemperatur, nicht negativ sein 
musste. Sonst siehst du nix auf dem LCD.

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Vanye R. schrieb:
> Denk dran das du Kontrastspannung brauchst! ICh meine mich zu
> erinnern
> das die in der Praxis, zumindest bei Raumtemperatur, nicht negativ sein
> musste. Sonst siehst du nix auf dem LCD.
>
> Vanye

Den einzigen diesbezüglichen Anhaltspunkt den ich habe ist die 
Beschaltung der Vlcd im Grundig CKS-1302 mit PNP Transistor. Das müsste 
man ggf anfangs regelbar machen, um den optimalen Punkt zu finden. Im 
PCF8576 Datenblatt müsste ich diesbezüglich auch noch deren Hinweise 
durchgehen. Es ist auch möglich (wahrscheinlich?), daß im Autoradio 
diese Vlcd-Spannung Temperaturabhängig sein muß.

Aber zuerst muß ich mir eine fünfpolige FFC Buchse besorgen. Löten will 
ich es nicht wirklich. Es wird noch einige Tage dauern bis sie 
eintrifft.

Jedenfalls bin ich Dank Eurer Unterstützung dem Ziel, es ausprobieren zu 
können, wesentlich näher.

Ich habe noch zwei ähnliche andere mit der Bestellnummer 19720-0251.00. 
sie sehen sehr ähnlich aus, aber etwas mechanisch verschieden. Das sind 
CF1422 wenn ich mich recht erinnere. Kabelanschlüsse sind identisch mit 
dem hier.

Liegt Deines noch herum oder wurde ein Projekt daraus? Etwas begrenzt 
für generelle Anwendungen scheint es anhand der bisherigen Bilder schon 
zu sein. Auch die spärlichen Dezimalpunkte sind etwas ungut. Die 
Annuncuatoren sind auch nur für die Originalanwendung vorhanden. Einige 
lassen sich allerdings praktisch einsetzen. Mal sehen, welche 
Hieroglyphen meines hat. FW mässig scheint es Dank Deiner Beispiele 
nicht zu anstrengend sein. Das Datenblatt gibt da diesbezüglich guten 
Aufschluss.


Gerhard

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Die fünfpolige FFC Buchse ist bestellt. Jetzt beginnt das Warten;-)

von Vanye R. (vanye_rijan)


Lesenswert?

Ich bin mir relativ sicher das ich da einen normalen Pfostenstecker mit 
2.54mm Pinabstand drauf loeten konnte. Aber vielleicht das ja bei deinem 
Teil etwas anders.

Vanye

von Gerhard O. (gerhard_)


Lesenswert?

Vanye R. schrieb:
> Ich bin mir relativ sicher das ich da einen normalen
> Pfostenstecker mit
> 2.54mm Pinabstand drauf loeten konnte. Aber vielleicht das ja bei deinem
> Teil etwas anders.
>
> Vanye

Bei mir ist der Leiterabstand 1mm und passend für eine FFC Buchse.

Ich dachte zuerst auch an eine Improvisation, dann aber entschied ich 
mich dagegen, weil ich das FFC Kabel nicht verhunzen wollte.

Gerhard

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Arne R. schrieb:
> Moin Gerhard,
>
> Gerhard O. schrieb:
>> Vor Jahren schenkte mir jemand in D zwei LCD Module mit der controller
>> Bezeichnung CF1395. Es hat fünf Anschlüsse die entweder I2C oder Serial
>> vermuten lassen. Leider waren meine bisherige Recherchen erfolglos. Es
>> könnte sein, dass es von Pollin stammt.
>
> Bei Pollin gab es vor gut 20 Jahren das "DSM-0822A", das sieht sehr
> aehnlich aus, allerdings steht bei meinem "CF1382" drauf:
> https://elektronik-kompendium.de/public/arnerossius/bastel/dsm0822a.htm

Hallo Arne,

ich sah mir Deine Seite an. Nachträglich noch vielen Dank. Ich habe 
übrigens selber noch genau zwei solche Module. Ich bin sicher daß da 
auch CF1477 und Optrex draufstand.

Sobald die bestellten FFC Buchsen da sind, werde ich sie testen.

Ich habe schon einen möglichen Meßgerät Anwendungsfall wo die Anzeige 
und Annunciators ziemlich gut passen würden. LCD Abkürzungen lassen sich 
ja interpretieren;-)

Niedlich kompakt sind die Teile schon.

Das ist ein klarer Fall wo sich eine Problemlösung eine Anwendung 
sucht;-)


Gruß,
Gerhard

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