ERLEDIGT:Com-Port ansteuern

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

ERLEDIGT:Com-Port ansteuern

Beitrag von ts230 »

Hallo,
wie steuere ich den Com-Port an???
Ich möchte auch USB-Seriell-Wandler Ansteuern,da manche Computer kein RS232 haben aber meine Hardware das voraussetzt.
Dann sollen alle Com-Ports in einer ComboBox angezeigt werden und dann kann mann sich über ein »Verbinden« Button Verbinden.
Ich müsste das Haben:
    Alle Comports(inkl.USB-->Seriell) anzeigen und in ComboBox schreiben
    Verbinden/Trennen
    Senden/Empfangen
Bitte helft mir.
Zuletzt geändert von ts230 am Mo 22. Dez 2008, 20:38, insgesamt 1-mal geändert.

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von alexander »

keine Ahnung, aber ich habe ein bisschen gegooglet, und kam hierzu:
http://sourceforge.net/projects/cportlaz/
vielleicht hilft es dir ja....

ohh er schreibt, das die nur für winodws funktioniert :-( .... schade
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

fpc hat eine serial unit.
synapse hat eine synaser unit.
beides plattformunabhängig, getestet und gut.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

@Christian:
Danke!
Wo ist sie bei synapse?Ich habe Synapse sowieso eingebunden,weil ich auf updates prüfe.............................
Ach:
USB-->Seriell-Wandler werden ja unter Linux als /dev/ttyUSB0 (oder so) eingebunden.
Bei Windows sind die dann ja nur normale COM-Ports.
Zuletzt geändert von ts230 am So 21. Dez 2008, 18:23, insgesamt 2-mal geändert.

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von monta »

Also meine DateiSuche zeigt mir die serial.pp unter \source\rtl\unix im FPC-Verzeichnis an.

Sollte die richtige sein:
{ Unit for handling the serial interfaces for Linux and similar Unices.
(c) 2000 Sebastian Guenther, sg@freepascal.org
}


und eine serial.pas gibt es noch für amiga :wink:
Johannes

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

Gefunden!

Aber wie lese ich jetzt alle seriellen Anschlüße in eine ComboBox ein? :? :? :? :?:

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

ndem du prüfst welche sich öffnen lassen
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

Ja.Gut :)
Jetzt habe ich das:

Code: Alles auswählen

i:=0;
            For i:=0 to 50 Do
            begin
            try
            SHandle:=SerOpen('/dev/ttyUSB'+inttostr(i)+'');
            SerClose(SHandle);
            a:=true;
            except
            a:=false;
            end;
            if a then Combo1.Items.Add('/dev/ttyUSB'+inttostr(i)+'');
            end;

Und ich krieg alle /dev/ttyUSB0 ... /dev/ttyUSB50 aber die sind nicht vorhanden auf meinem System.Was mache ich denn falsch???

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

Na du guckst gar nicht ob dein SHandle gültig ist. Wiso sollte da ne Exception ausgelöst werden wenn sich der Port nicht öffnen lässt ...
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

Wie schau ich denn nach ob das Handle gültig ist?

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

Also man kann ja gern ma fragen aber ...
.. das hat nichts mehr mit Anfängerfragen sondern eher was mit Faulheit zu tun.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

geht es so?

Code: Alles auswählen

if SHandle then Combo1.Items.Add('/dev/ttyUSB'+inttostr(i)+'');

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

Ja so sollts gehn.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ts230
Beiträge: 109
Registriert: Sa 20. Dez 2008, 20:42
OS, Lazarus, FPC: Linux (L 0.9.24)
CPU-Target: 32Bit
Wohnort: San Jose,CA
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von ts230 »

Aber es will irgendwie immer noch nicht.
ich habs mit

Code: Alles auswählen

if not SHandle = 0 then Combo1.Items.Add('/dev/ttyUSB'+inttostr(i)+'')

probiert weil das andere nicht geht.
Aber hier das gleiche Problem :?

Code: Alles auswählen

  1.  If beitragHilfreich then leseitdurch()
  2. else volle_ignoranz();

tiersendung.funpic.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Com-Port ansteuern

Beitrag von Christian »

sehr merkwürdig.
Alternativ würde mir noch FileExists einfallen.

if FileExists('/dev/ttyUSB'+inttostr(i)+'') then

wiso eigentlich das '' nach IntToStr(i)
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten