Zum Inhalt springen

Serielle Schnittstelle unter Win32 und Linux


Empfohlene Beiträge

Geschrieben

HiHo,

hab ein mehr oder minder grosses problem ...

ich hab nen iso reader (ist ne art kartenleser) am seriellen port haengen ... leider bekomm ich es ned gebacken, den anzusprechen.

Unter Linux funktioniert zwar alles (file pointer auf /dev/ttyS0, dann mit read und write) aber die kartennummer wird bei 3 von 4 karten nicht vollstaendig uebertragen. Die Kartennummer besteht aus 6 Hexbyte, d.h. z.b. 00 01 1E 1E CF B1. Der Puffer, den ich mit fgets(...) beschreibe sollte dann mit 13 zeichen beschrieben sein, ist aber in 3 von 4 faellen nur mit 12 zeichen beschrieben ... Es koennte sein, dass die Daten in Ascii uebertragen werden und dabei was verloren geht. Aber eine binaer uebertragung hab ich net hinbekommen.

Ich hab das ganze dann unter Windows 2000 probiert, allerdings funktionieren die kompletten dll's (alles mit vc++) nicht, daher geh ich grad mit nem dos c sample der firma an die geschichte ran. Ist allerdings sehr umfangreicher code, den ich nicht komplett bearbeiten will (brauch nur nen bruchteil davon).

Am liebsten waere mir eine loesung fuer linux, aber eine fuer win2k tut es auch. D.h. ich braeuchte geteste beispiele etc. pp.

google und google.groups hab ich alles schon durchforsch, aber wie gesagt, unter win2k laeuft so gut wie gar nix.

danke schonmal im vorraus.

Geschrieben

Evtl. liegt es daran, dass fgets, fread, etc. gepuffert sind. Versuche es einmal mit garantiert ungepufferten Funktionen (read bzw. _read bei VC++).

ch hab das ganze dann unter Windows 2000 probiert, allerdings funktionieren die kompletten dll's (alles mit vc++)

Was für DLLs? Unter Windows kannst Du ähnlich wie unter Linux mit der Funktion CreateFile einen Handle auf einen COM-Port öffnen.

Geschrieben

hmmm ... das mit dem puffer koennte gut sein, stimmt. Obwohl es seltsam ist, dass eben bei einer karte alles ankommt und bei den anderen drei nicht ...

ich hab verschiedene dll's im internet gefunden und auch von den demo quellen probiert ... das mit dem CreateFile ging zwar, aber nicht das lesen und schreiben ...

danke

Geschrieben

Kann das evt. auch einfach ein Handshakeproblem zwischen Schnittstelle und Leser sein ? Wie ist denn die Schnittstelle technisch konfiguriert ?

Kannst Du nicht unter Linux einfach mal ein "cat" von der Schnittstelle versuchen oder musst Du das Teil erst pollen ?

Geschrieben

es geht mir nicht darum etwas lesen zu können sondern um zu sehen dass die Anbindung ok ist. Wenn cat was bekommt kann man das ja in ein File umleiten und analysieren, speziell ob es komplett ist ;)

Geschrieben

hmm ... an den verbindungseinstellungen hab ich nix gemacht. Der Reader verlang 9600 Baud, No Parity und keine flusskontrolle ... ich koennte das mit der termios.h einstellen, allerdings komm ich mit der net klar/geht net.

wo seh ich, wie das device konfiguriert ist?

thx

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...