Hallo zusammen
Ich habe in meinem Projekt Modellbahnsteuerung eine Komponente Die Serialschnittstellen behandelt.
Ich benutze die Softwarekomponenete "SerCOM 1.2" von Dynamo Software.
Doch jetzt habe ich ein Problem. Ich habe eine zusätzliche Schnittstelle Installiert, die im Gerätemanager als COM11 erscheint.
Mit HTerm funktioniert diese auch einwandfrei.
Doch nun mein Problem. Wenn die COM-Schnittstelle über COM 9 hinausgeht, kommt eine Fehlermeldung -3 Das ist "Fehlermeldung vom Betriebssystem, Nummer in "SerialCode" "
Nun gäbe es 2 Möglichkeiten. Entweder ich könnte die Schnittstelle in Windows umbenennen, was mir bisher noch nicht gelungen ist, (Ich habe es im Gerätemanager probiert)
Oder ich brauche eine andere Komponente für Lazarus.
Ich habe das Paket LazSerial installiert, aber ich habe keine Ahnung, wie ich das nutzen kann.
Es gibt da nur die Ereignisse OnStatus oder OnReceive.
Könnt ihr mir da etwas Besseres empfehlen?
Serial Komponente gesucht.
Re: Serial Komponente gesucht.
Synaser ist Teil von Synapse:
https://wiki.freepascal.org/Hardware_Ac ... munication
Synapse ist im Online Package Manager als Synapse 40.1
https://wiki.freepascal.org/Hardware_Ac ... munication
Synapse ist im Online Package Manager als Synapse 40.1
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1725
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Serial Komponente gesucht.
Wenn man im Gerätemanager mit Rechtsklick auf das Gerät das Kontextmenü öffnet und da auf "Eigenschaften" klickt, im nächsten Fenster auf "Erweitert", kann man einen anderen COM Port für das Gerät auswählen.haderlump hat geschrieben: So 21. Dez 2025, 12:23 ... Entweder ich könnte die Schnittstelle in Windows umbenennen, was mir bisher noch nicht gelungen ist, (Ich habe es im Gerätemanager probiert)
-
siro
- Beiträge: 772
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: Serial Komponente gesucht.
Das Problem bei Windows ist,
dass sich ab COM10 die Namen ändern, dafür hab ich mir mal folgende Funktion geschrieben:
dass sich ab COM10 die Namen ändern, dafür hab ich mir mal folgende Funktion geschrieben:
Code: Alles auswählen
{------------------------------------------------------------------------------}
{ liefert den erforderlichen Windowsnamen zurück }
{ Dieser Name wird benötigt bei Window.CreateFile }
{ COM1,COM2,COM3...COMx }
{ ab COM10 gibt es eine spezielle Namensgebung unter Windows }
{ \\.\COM10 \\.\COM11 \\.\COM12 ..... }
{ an das Ende wird immer ein 0x00 angehangen für die C Convertierung }
{ bzw. als Endmarkierung für den "C" String }
function ComXName(no:word):string;
begin
if no < 10 then result:='COM'+IntToStr(no)+char(0) { COM 1..9 }
else result:='\\.\COM'+IntToStr(no)+char(0); { COM 10..nn }
end;
{------------------------------------------------------------------------------}Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
-
haderlump
- Beiträge: 192
- Registriert: Fr 18. Jan 2013, 09:29
- OS, Lazarus, FPC: Windows 10, Windows XP, Lazarus 1.6
- CPU-Target: Celeron
Re: Serial Komponente gesucht.
Danke für die Antworten.
Ich werde morgen mal die Lösung von Siro probieren. Das wäre mir das liebsten, weil ich da am wenigsten ändern muss.
Herzlichen Dank.
Ich werde morgen mal die Lösung von Siro probieren. Das wäre mir das liebsten, weil ich da am wenigsten ändern muss.
Herzlichen Dank.