Virtueller COM Port

Gast #385444
Möchte gern Daten über USB von meinem Controller an den PC senden. Der
Controller ist ein Atmel AT90USB1287. Suche jetzt einen Treiber der es
mir ermöglicht einen virtuellen Com Port zu erstellen, damit ich die
Daten über das Terminal ausgeben, oder mit einer MVC C++ Anwendung
auslesenund Verarbeiten kann.
Die MVC Anwendung funktionier schon per serieller Schnittelle. Jetzt
möchte ich die Daten von meinem ersten Controller (Mega128) zum STK525
mit At90USB1287 schicken, der die dann per USB an den PC sendet.

Sagt mir bitte auch falls das so gar nicht geht...
Vielen Dank
Gruß Jan
Persönliche Seite
Wenn Du auf Deinem USB-Controller die Standardgeräteklasse für serielle
Schnittstellen (CDC) emulierst, benötigst Du nur eine *.inf-Datei, und
der mit Windows mitgelieferte Standardtreiber wird verwendet.

Ein Beispiel dafür liefert LPCUSB*, das ist ein USB-Stack für einen
LPC2148.

Zitat:

   On Windows XP, the device uses the built-in usbser.sys
   driver and just needs an .inf file.
   The extra COM port simply shows up as a COMx device.

   On Linux, the USB serial port is handled by the
   cdc_acm module, which causes the serial port to
   show up as /dev/ttyACMx.


Im Zusammenhang mit einem PIC wird das ganze auch erwähnt**:

   Es gibt bei Microchip mehrere Code-Beispiele wie
   man Programme für den PIC schreibt.
   Als HID (Human Interface Device), über eine spezielle
   DLL von Microchip

*  oder als CDC-Device (Communication Device Class).
*  Letzteres habe ich hier benutzt. CDC arbeitet über
*  einen virtuellen COM-Port. Man schreibt seine Programme
*  so als würde man eine serielle Schnittstelle ansprechen.
*  Für CDC ist kein spezieller Treiber erforderlich. Alles
*  läuft über die USBSER.SYS. Die ist bei W98 und höher dabei.
*  Das CDC-Demo von Microchip läuft nur mit W2000/XP.
*  Für W98 gibt es leider keine INF-Datei zum installieren
*  des Treibers bei Microchip.


Dasselbe wird recht ausführlich auch für AT91SAM7X beschrieben***, auch
dort sollte sich eine passende INF-Datei finden lassen.


Also: Implementiere auf dem AT90USB1287 ein CDC-Device, dann benötigst
Du nur noch 'ne *.inf-Datei.


Viel Erfolg!



*) http://wiki.sikken.nl/index.php?title=LPCUSB#USB_serial_port
**) http://www.holger-klabunde.de/usb/18f2550.htm
***)http://www.freertos.org/portsam7xlwIP.html
Persönliche Seite
Was jetzt, virtuell oder existierend?

Die Einstellung, welche Schnittstellennummer die virtuelle
Schnittstelle verpasst bekommt, die wird im Gerätemanager vorgenommen;
sie fest in die *.inf-Datei zu schreiben wäre kontraproduktiv - was
passiert auf einem PC, auf dem die betreffende Nummer bereits durch
irgendwas anderes belegt ist?
Gast
Das hat mir einfach einen Port installiert. Ich wüsste nicht worauf es
zufreifen sollte.
Dachte ich könnte das mit der VID_xxxx in der .inf-Datei einstellen
Persönliche Seite
Moment mal.

  "Das hat mir einfach einen Port installiert.
  Ich wüsste nicht worauf es zufreifen sollte."

IrComm2k ist ein Treiber, der virtuelle serielle Schnittstellen zur
Verfügung stellt. Der Treiber setzt auf der der IrDA-Hardware und dem
IrDA-Stack des Rechners auf.

Was solltest Du da noch einstellen wollen?

Ob "es" auch ohne IrComm2k ginge, hängt davon ab, was "es" ist und
was Du überhaupt erreichen willst.

Was für ein Gerät möchtest Du mit was für einer Software ansprechen?
Gast
Es handelt sich um einen USB-Infrarot Stick.
Ich möchte per PocketPC etwas auf den Rechner schicken.
Ich hab also auf dem PC eine Server-Software und auf dem PocketPC eine
Client Software die mir etwas schickt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.