Autor Beitrag
Gintonik
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 66

Win MCE 2005
Delphi7 Enterpr.
BeitragVerfasst: Sa 23.02.08 13:57 
Hallo,

ich möchte gerne Daten aus dem COM-Port einlesen und habe die Empfehlung bekommen dazu die SerialNG zu benutzen. Ich bekomme die aber nicht installiert.

Meine Frage:

Hat einer das schonmal installiert bzw. kann mir einer behilflich sein bei der installation?

Und erscheint die Komponente nach der Installation oben in der Komponentenleiste?

Thx...


PS: Ich komme mit der readme nicht zurecht welche Informationen zur Installation enthält.

_________________
Man sagt, er habe magische Kräfte!
Sebastien
Hält's aus hier
Beiträge: 3

Win XP
Delphi 2005 Personal
BeitragVerfasst: Sa 23.02.08 15:14 
Hallo.

Vorweg: Ich bin (auch) neu bei Delphi und habe auch noch keine externe Komponente installiert. Aber mit ein bisschen Suchfunktion bekommt man doch schon ziemlich viele Information:

Tutorial zur Datenübertragung mittels serieller Schnittstelle (COM)

SerialNG :: Delphi 4-7 :: Installation (mit Screenshots)

SerialNG :: Delphi 2005 :: Installation (mit Screenshots)

Sieht zumindest mal ziemlich idiotensicher aus.

Beste Grüße.
sneumann
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 06.10.11 08:58 
Moderiert von user profile iconNarses: Komplett-Zitat des letzten Beitrags entfernt.

habe das dpk für delphi 7 mit eingefügt pfade auch und er sagt mir
[Warnung] Die Unit 'CommPortList' wurde implizit in Package 'SerialNGCmp' importiert
und jetzt weiss ich nicht genau wie ich das programm starte um zu kommunizieren welche datei muss ich starten ?
er sagt mir wenn ich debugge ich muss Start / PArameter angeben (eine exe datei) da gibts aber nur die exe für portlist im portlist ordner muss ich die dafür nehmen oder wie starte ich jetzt das programm.. ich sehe im ordner von serielng nur meherere demos!? welche ist die richtige um port zum seriellen gerät öffnen zu können und dann strings hinsenden zu können ?!

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

ich habe das jetzt hinbekommen das prog funzt habe auf komp installieren in vorhanders pack und die commportlist unit eingefügt jetzt starte ich die seriell ng advanced demo und klicke bei settings auf open port COM4 stelle alle daten ein bei settings dann gehe ich auf string sende und gebe:
die befehle speziell für mein gerät zum connecten lauten: 0000sr<ENQUIERY> (<ENQUIERY> = Control E bzw 05 hex)
dann müsste eignetlich schon ein 06 zurück kriegen = Control F = ACKNOWLEDGE vom gerät zurückkommen, dass er es gemerkt hat.
danach habe ich ein (02 (hex=Control B = START OF TEXT)) <BEFEHL> dann (<LF> CONTROL J) dann (03 (hex = CONTROl C = END OF TEXT))

Die Befehle habe ich alle als String eingegeben also so sieht das komplett aus wenn man mit einem anderen Programm wie REALTERM mit dem Gerät kommuniziert: => ist immer was ich eingebe und - immer was zurückkommt.

=> 030 030 030 030 s73 r72 Connect
=> 05 ENQUIRY
-06 ACKNOWLEDGE vom Gerät
=> 02 START OF TEXT
=> :3A D44 I49 S53 P50 :3A B42 A41 C43 K4B ?3F 20 131 // Licht an - (BEFEHL)
=> 0A NEW LINE /n
=> 03 END OF TEXT
-06 ACKNOWLEDGE vom Gerät
=> 04 END OF TRANSMISSION

Licht aus:
3A D44 I49 S53 P50 :3A B42 A41 C43 K4B ?3F 20 030 statt das oben

Beim log sehe ich jedoch nur

Msg 06.10.11 10:29:16 :Code 0 at 110 Text: Msg start reactivating Port
Msg 06.10.11 10:29:16 :Code 2 at 112 Text: Error reopening Port
Msg 06.10.11 10:29:33 :Code 0 at 110 Text: Msg start reactivating Port
Msg 06.10.11 10:30:00 :ComEvent48
Msg 06.10.11 10:30:06 :ComEvent48
Msg 06.10.11 10:30:07 :ComEvent48
Msg 06.10.11 10:30:13 :ComEvent48
Msg 06.10.11 10:30:19 :ComEvent48

Hat er schon connectet? hat irgendwas geklappt? werde aus den
Weiss jemand wie man die Befehle oder wie man überhaupt contact über seriell ng mit dem gerät am COM 4 aufnimmt und wann ich sehe ob es geklappt hat. Welche demo muss ich dafür öffnen? die Serielladvdemo.dpr?
sneumann
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.10.11 11:17 
ich weiss jetzt wie ich die befehel eingebe im code
in der
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
procedure TForm1.ModemComm;
/7sind diverse Aufrufe wie
SerialPortNG1.SendString('AT'+#$0d);
//die Sie entsprechend modifizieren können.
//Z.B.
// => 030 030 030 030 s73 r72 zum Connecten
// =>05 ENQUIRY = 05 hex
SerialPortNG1.SendString('030 030 030 030 s73 r72'+#$05);
//dann gehts weiter
if WaitForAnswer(100) < 0 then
begin
memoResult.Lines.Add('Error: No Answer on');
Exit;
end;
// -06 ACKNOWLEDGE kommt vom Gerät zurück
s := SerialPortNG1.ReadNextClusterAsString;
if (Length(s) = 1and (s[1] = #$06then // alles ok

ich habe jetzt folgendes problem, musste serialng nochmal neu drauf machen, beim installieren von Serial ng compiliert die datei SerialNGDll.dpr nicht mehr richtig
und gibt mir folgende fehlermeldung:

[Warnung] SerialNGDll.dpr(35): Unsicherer Typ 'PChar'
[Warnung] SerialNGDll.dpr(37): Unsicherer Typ 'procedure, untyped pointer or untyped parameter'
[Warnung] SerialNGDll.dpr(38): Unsicherer Typ 'procedure, untyped pointer or untyped parameter'
[Warnung] SerialNGDll.dpr(82): Unsicherer Typ 'PChar'
[Warnung] SerialNGDll.dpr(86): Unsicherer Typ 'PortName: PAnsiChar'
[Warnung] SerialNGDll.dpr(113): Unsicherer Typ 'procedure, untyped pointer or untyped parameter'
[Warnung] SerialNGDll.dpr(122): Unsicherer Typ 'PChar'
[Warnung] SerialNGDll.dpr(122): Unsicherer Code '@ operator'
[Warnung] SerialNGDll.dpr(132): Unsicherer Typ 'procedure, untyped pointer or untyped parameter'
[Warnung] SerialNGDll.dpr(140): Unsicherer Code '@ operator'


Die anderen SerialNGDemos laufen alle beim compilieren nur er öfnnet zum beispiel beim Quiet demo programm nicht den COM PORT vorhin ging es noch jetzt hab ich nochmal alles runter gemacht und drauf gemacht ,serial ng, jetzt kommen diese Fehlermeldungen beim compilieren. Er öffnet wahrs nicht weil die Serial ng dll .dpr nicht richtig compiliert wurde was hab ich vergessen Commportlist.pas habe ich auch schon ins dpk integriert!?


außerdem sagt er mir ich muss einen start parameter angeben welchen muss ich bei dieser SerialNGDll dpr angeben

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.10.11 11:57 
Ich glaube nicht, dass sich viele für so ein uraltes "SerialNG" interessieren.
Da sind sicher viele Funktionen drin, die niemand mehr braucht.
Wenn ich mit USB-SERIAL-Wandler oder Modems kommuniziere, nehme ich was Einfaches, das keine Installation braucht.

Schau Dir erst mal Demos an, bevor Du etwas Eigenes entwickelst.

Hinweis:
Bei DELPHI 2009 /RAD6 folgende Änderung durchführen:
//function PosCRLF(const Value: AnsiString; var Terminator: AnsiString): integer;
function PosCRLF(const Value: String; var Terminator: String): integer;
ODER alternativ:
function TBlockSerial.RecvTerminated(Timeout: Integer; const Terminator: string): string;
var
s, t: Ansistring;
...
Einloggen, um Attachments anzusehen!
sneumann
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.10.11 13:46 
user profile iconhathor hat folgendes geschrieben Zum zitierten Posting springen:
Ich glaube nicht, dass sich viele für so ein uraltes "SerialNG" interessieren.
Da sind sicher viele Funktionen drin, die niemand mehr braucht.
Wenn ich mit USB-SERIAL-Wandler oder Modems kommuniziere, nehme ich was Einfaches, das keine Installation braucht.

Schau Dir erst mal Demos an, bevor Du etwas Eigenes entwickelst.

Hinweis:
Bei DELPHI 2009 /RAD6 folgende Änderung durchführen:
//function PosCRLF(const Value: AnsiString; var Terminator: AnsiString): integer;
function PosCRLF(const Value: String; var Terminator: String): integer;
ODER alternativ:
function TBlockSerial.RecvTerminated(Timeout: Integer; const Terminator: string): string;
var
s, t: Ansistring;
...



Ich benutze Delphi 7, welches programm wären denn am besten um mit der Seriellen schnittstelle zu kommunizieren?? das mit SerialNg hat shcon fast funktioniert er hat schon port geöffnet und ich konnte glau bich auhc schon was hinschicken bin mir nur nicht sicher weil es dann probleme gab.. welche Komponente wäre denn deiner Meinung nach am Besten dafür geeignet, eine neuere? ,aber kompatibel mit delphi 7?!
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.10.11 14:22 
Wie geschrieben:
Schau Dir erst mal Demos an, bevor Du etwas Eigenes entwickelst.

Mit DELPHI 7 geht das auch.

Was für ein Messgerät ist das ?
Herstellerlink, bitte !