Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Codeumsetzer von Baisc nach Pascal? (https://www.delphipraxis.net/64811-codeumsetzer-von-baisc-nach-pascal.html)

smart 8. Mär 2006 15:15


Codeumsetzer von Baisc nach Pascal?
 
Gibt es ein ‚Codeumsetzer von Baisc nach Pascal?’ Ich habe da, so ein 8 Zeiler für Basic. Leider kann ich kein Basic.
Delphi-Quellcode:
E$=CHR$(27)
PRINT #1,ED$+"0"+CHR$(10)+CHR$(10)+CHR$(30)+CHR$(22)
PRINT #1,ED$+"1"+CHR$(10)+CHR$(13)+"Testing Control ..."+EN$
PRINT #1,ED$+"2"+CHR$(10)+CHR$(13)+"Command OK !"+EN$
PRINT #1,ED$+"3"+CHR$(10)+CHR$(30)+"Testing [ESC] ..."+EN$
PRINT #1,ED$+"4"+CHR$(22)+CHR$(13)"Cursor Off/On: "+EN$
PRINT #1,ED$+"5"+E$+"`"+CHR$(2)+EN$
PRINT #1,ED$+"6"+E$+"`"+CHR$(1)+CHR$(13)+"Turn LCD screen off"+EN$
Kann Einer von Euch helfen?

Waldteufel 8. Mär 2006 15:36

Re: Codeumsetzer von Baisc nach Pascal?
 
Hi smart.

Das ist im Leben kein Achtzeiler ;-) Da muss noch viel mehr drumherum.

Delphi-Quellcode:
e := #27;
s.WriteString(ed + '0' + #10#10#30#22);
s.WriteString(ed + '1' + #10#13 + 'Testing Control ...' + en);
s.WriteString(ed + '2' + #10#13 + 'Command OK !' + en);
s.WriteString(ed + '3' + #10#30 + 'Testing [ESC] ...' + en);
s.WriteString(ed + '4' + #22#13 + 'Cursor Off/On: ' + en);
s.WriteString(ed + '5' + e + '`' + #2 + en);
s.WriteString(ed + '6' + e + '`' + #1#13 + 'Turn LCD screen off' + en);
s (#1 in Basic [Fußnote 1]) ist offenbar irgendwas, wo man reinschreiben kann, mit einer hypothetischen Methode WriteString.
Außerdem fehlen noch die Variablen ED$ und EN$.
Such mal nach Zeilen, die mit
Code:
ED$ =
oder
Code:
EN$ =
beginnen.

PS: Sieht nach Com-Port-Ansteuerung aus...

[Fußnote 1] So: #1 sehen in BASIC übrigens die Dateihandles aus.

marabu 8. Mär 2006 15:40

Re: Codeumsetzer von Baisc nach Pascal?
 
Scheint eine Ausgabe auf eine Schnittstelle zu sein - parallel oder seriell - an der ein Display Panel angeschlossen ist.

marabu

smart 8. Mär 2006 16:05

Re: Codeumsetzer von Baisc nach Pascal?
 
Vielen Dank, Waldteufel.

Das ganze hat natürlich mehr Zeilen. Es ist ein Testprogramm und stuert ein Kassen Display an COM1 an. Das waren nur die wichtigsten Zeilen.

mschaefer 8. Mär 2006 16:06

Re: Codeumsetzer von Baisc nach Pascal?
 
Moin, moin,

Heike, Du baust an einer Ansteuerung für ein LCD-Display?!? Irgendwo vorher im Basic-Code wird die Printausgabe wahrscheinlich auf den Com-Porrt gelenkt und die Steueranweisungen und Texte dann mit dem Print ausgegeben. Das zusammenbauen des Stringes aus den Einzelteilen bekommst Du selbst hin. Tippe, dass die Ausgabe auf den Port wohl das knackige Problem ist.

Würde entweder die Komponente TSerial von Rainer Reusch aus der Toolbox verwenden oder bei Torry die TComPort von Dejan Crnila. Da mußt Du Deinen String dann in die Senden - Routine einbauen.

Würde das LCD aber vorher mal mit einem Terminal-Programm testen und die Befehle erstmal von Hand eintragen. Geeigent wäre zum Beispiel ShamCom .

Grüße aus der Stadt an der Leine // Martin

smart 8. Mär 2006 16:13

Re: Codeumsetzer von Baisc nach Pascal?
 
Zitat:

Zitat von mschaefer
Moin, moin,

Heike, Du baust an einer Ansteuerung für ein LCD-Display?!? Irgendwo vorher im Basic-Code wird die Printausgabe wahrscheinlich auf den Com-Porrt gelenkt und die Steueranweisungen und Texte dann mit dem Print ausgegeben. Das zusammenbauen des Stringes aus den Einzelteilen bekommst Du selbst hin. Tippe, dass die Ausgabe auf den Port wohl das knackige Problem ist.

Würde entweder die Komponente TSerial von Rainer Reusch aus der Toolbox verwenden oder bei Torry die TComPort von Dejan Crnila. Da mußt Du Deinen String dann in die Senden - Routine einbauen.

Würde das LCD aber vorher mal mit einem Terminal-Programm testen und die Befehle erstmal von Hand eintragen. Geeigent wäre zum Beispiel ShamCom .

Grüße aus der Stadt an der Leine // Martin

Hallo Martin!

Gar nicht mal. Ich habe das so gelöst:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
ES: String;
  tf: TextFile;
begin
ES := Chr(27);
  AssignFile(tf, 'COM1: 9600,N,8,1');
  Rewrite(tf);
  WriteLn(tf, ES + ';' + ES + '(1* Rotkohl 500 Gr. *' + CHR(13) + ES + ')0091');
  Writeln(tf, ES + '(2 4,45 Euro *' + CHR(13) + ES + ')1192');
  CloseFile(tf);
end;
Klappt sogar. Ich kann nur kein Basic. Da war ein Demoprogramm in Basic bei. Das Display hat nämlich zwei Zeilenund ich bin noch nicht dahinter gekommen wie die zweite Zeile angesprochen wird.

Gruß
Heike

mschaefer 9. Mär 2006 19:43

Re: Codeumsetzer von Baisc nach Pascal?
 
Nein, Ja, Genial! Das ist ja sauberstes Turbo-Pascal ! Eine richtig schöne Lösung! Grüße aus dem verschneiten Hannover // Martin


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:46 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