Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Epson Customer Display (Kassendisplay) (https://www.delphipraxis.net/180710-epson-customer-display-kassendisplay.html)

theoneand 11. Jun 2014 08:24

Epson Customer Display (Kassendisplay)
 
Hallo zusammen,

Also, ich hab ein Epson DM-D110-112 Customer Display mit USB-Verbindung am PC angeschlossen,
sämtliche Treiber installiert, nun leuchtet das Ding mal fröhlich.

Wie kann ich jetzt aber mit Delphi Testweise ein paar Zeilen auf dem Display ausgeben??
Hat jemand schon mal mit sowas gearbeitet?


Danke im Voraus


Hoffe ich habe das in der richtigen Rubrik gepostet

himitsu 11. Jun 2014 08:58

AW: Epson Customer Display (Kassendisplay)
 
Du öffnest den passenden COM-Port (emulierter RS-232) und sendest dem eingebauten LC-Display die nötigen Befehle?
Das geht entweder über CreateFile/THandleStream/TFileStream oder auch über spezielle TComPort-Komponenten.

Welche Befehle das sind, sollte man irgendwo in der Dokumentation finden.
Also erst einen bestimmten Initialisierungscode und dann die gewünschten Zeichen im ASCII-Format.


Es kann auch sein, daß sich eine Treiber-DLL im Lieferumfang befindet, welche die Kontrolle über einfache API-Aufrufe für dich bereitstellt.



[add]
Nur 150€ für ein 15-€-Display mit bissl Plaste drumrum und einem kleinen RS232-USB-Konverter mit Netzteil dran geht ja noch. :D

theoneand 11. Jun 2014 12:09

AW: Epson Customer Display (Kassendisplay)
 
danke erst mal, hab 2 Sachen ausprobiert:
1. Habe ne unit gefunden die das handelt: SerialNG

damit bekomme ich zumindest mal ne ausgabe hin:
aber keinen Klartext, sondern irgendwelchen mist....

Da muss wahrscheinlich noch irgendwas eingestellt werden

2. mit der TComPort komponente:
Delphi-Quellcode:
 ports := TComPort.create(nil);
  ports.Port := 'COM4';
  ports.BaudRate := br9600;
  ports.DataBits := dbEight;
  ports.Parity.Bits:= prNone;
  ports.StopBits := sbOneStopBit;
  ports.Open;
  ports.WriteStr('test');
  ports.Free;
wobei ich bei dieser Variante keine Ausgabe auf dem Display erhalte...

Irgend eine Idee??

baumina 11. Jun 2014 12:31

AW: Epson Customer Display (Kassendisplay)
 
Ich hab nur mal kurz gegoogelt, aber ich denke dir wird EPSON OPOS ADK weiterhelfen.

DeddyH 11. Jun 2014 12:31

AW: Epson Customer Display (Kassendisplay)
 
Könnte der "Mist" evtl. mit einem Ansi-/Unicode-Problem zu tun haben? Welche Delphi-Version setzt Du denn ein?

theoneand 11. Jun 2014 12:31

AW: Epson Customer Display (Kassendisplay)
 
hab ich auch schon gefunden, bringt mir aber auch nich wirklich was

pesi 11. Jun 2014 12:32

AW: Epson Customer Display (Kassendisplay)
 
Google hat mich zu einer API (OCX)geführt: https://download.epson-biz.com/modul...scat=38&pid=60

Vielleicht solltest Du Dich dort mal umsehen, die Seite ist nämlich für Entwickler. ...allerdings finde ich dort nur das D110 - keine Ahnung ob das kompatibel ist!?

Viel Erfolg

theoneand 11. Jun 2014 12:35

AW: Epson Customer Display (Kassendisplay)
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich benutze delphi 2007

ist ganz sicher ein ANSII char Problem,
hab hier in der Doku verschiedene Charsets, welche einstellbar sind,
es steht nur nich drin, wie man sie verwendet.....

hab die doku mal im Anhang drin.
Seite 43 is der Europe charset, welchen ich verwenden müsste

theoneand 11. Jun 2014 12:39

AW: Epson Customer Display (Kassendisplay)
 
@pepsi

hab mir schon alles gezogen von der epson hp, unter anderem die API
Aber dieses ganze gedöns bezieht sich immer alles auf nen Drucker, der mit dem Display
komuniziert.
Ich will das direkt von meinem Programm aus machen

baumina 11. Jun 2014 12:46

AW: Epson Customer Display (Kassendisplay)
 
Einfach das OCX über Komponente importieren ins Delphi ziehen.

theoneand 11. Jun 2014 12:52

AW: Epson Customer Display (Kassendisplay)
 
OCX?? wo bist du gerade
wie meinst: "ins delphi reinziehen"

himitsu 11. Jun 2014 12:54

AW: Epson Customer Display (Kassendisplay)
 
Bezüglich der direkten Ansteuerung:


Erstmal siehe Abschnitt 2.3

Die Einstellungen müssen mit denen deines COM-Ports übereinstimmen, bzw. der COM-Port damit.
Bei 2.3.1 am besten das Default-Setting so belassen. (8 bit, keine Parität usw.)

In 4.2.1 stehen die Steuercodes, auch wenn ich hier grade die Codes (Nummern) nicht angezeigt bekomm.

Eine Initialisierung scheint nicht nötig zu sein, da das hier bereits über die DIP-Schalter vorgenommen wurde.


Im Prinzip sollte es reichen, wenn die "Befehle" als ANSI an den COM-Port gesendet werden, wo man erst ab D2009 aufpassen müsste, ob man sich da kein Unicode-Problemchen einhandelt.

baumina 11. Jun 2014 12:59

AW: Epson Customer Display (Kassendisplay)
 
So viel ich gelesen habe ist das EPSON OPOS ADK eine Active-X Komponente, die sich im Delphi über Komponenten/Komponente importieren/Active-X-Steuerelement importieren verfügbar machen lässt.

theoneand 11. Jun 2014 13:00

AW: Epson Customer Display (Kassendisplay)
 
ach jetzt^^
der kann die ocx datei aber nich lesen, wenn ich sie als neue komponente hinzufügen will

@himitsu:
einstellungen mit dem Com Port stimmen, sonst würde ich ja gar nichts angezeigt bekommen
und die restlichen einstellungen hab ich erst nach und nach eingebaut, davor waren es die default
werte

theoneand 11. Jun 2014 13:01

AW: Epson Customer Display (Kassendisplay)
 
baumina du kleines genie :D
funktioniert einwandfrei

danke vielmals


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz