Hallo USB-geplagte, ich bin sicher, dieses Thema wurde hier schon einmal behandelt. Mit der Suchenfunktion komme ich aber nicht weiter, also: Ich habe ein Gerät mit FT232BM für USB-Betrieb gebaut. Die Treiber sind installiert, im Geräte-Manager von MS-W ist unter 'Anschlüsse(COM und LPT)' eingetragen: 'USB Serial Port (COM 5)'. Alles ist also bestens und funktioniert. Wenn ich aber die Treiber deinstalliere und wieder neu installiere dann lautet der neue Eintrag: 'USB Serial Port (COM 6)'. Meine Fragen: Warum wird die COM-Nr. um eins erhöht? Was ist mit den bisherigen COM-Nrn? Lassen sich alte COM-Nr. löschen? Besten Dank für Eure Hilfe, Noppes
> Warum wird die COM-Nr. um eins erhöht? Dein Gerät hat vermutlich keine Seriennummer. > Was ist mit den bisherigen COM-Nrn? Belegt. > Lassen sich alte COM-Nr. löschen? Ja, dazu mußt Du in der Regitry aufräumen.
Hallo, also bei mir ist es eigentlich immer so, daß nach einer Deinstallation der FTDI-Treiber die Vergabe der COM-Nummern wieder mit der ersten freien Nummer beginnt. Du kannst allerdings die COM-Nummern auch in der Systemstuereung frei vergeben bzw. neu zuweisen. Gruß Thorsten
> also bei mir ist es eigentlich immer so, daß nach einer installation > der FTDI-Treiber die Vergabe der COM-Nummern wieder mit der ersten > freien Nummer beginnt. Ist es bei den FTDIs tatsächlich nicht möglich, einen String-Deskriptor mit der Seriennummer zu hinterlegen? Mit einer Seriennummer sollte das Gerät wiedererkannt und erneut auf den vormals zugewiesenen COM-Port gelegt werden.
> Ist es bei den FTDIs tatsächlich nicht möglich, > einen String-Deskriptor mit der Seriennummer zu hinterlegen? Man kann dem Chip optional noch ein EEprom anhängen, indem Deskriptoren abgelegt werden können, z.B. auch eigene VID, PID, Beschreibung, usw. Zu Programmieren ist das ganze via MProg (von der FTDI-Page).
> Man kann dem Chip optional noch ein EEprom anhängen,
Das wird vermutlich eher selten angeschlossen, oder? Da sollte man
vielleicht doch lieber gleich einen Chip verwenden, der nicht so extrem
viel externe Beschaltung benötigt ...
Vielen Dank erstmal für Eure Antworten. Die FT232BM habe ich mit EEproms beschaltet. Die VID ist die von FTDI und die PID habe ich mir von meinem Disti geben lassen. Die Seriennummer wird automatisch beim programmieren des EEprom erstellt. Ich werden aber mal die manuelle Erstellung der Seriennummer ausprobieren. Ich kann zwar die Nr. des COM-Port im Geräte-Manager auswählen, aber frühere Belegungnen sind mit 'bereits belegt' gekennzeichnet. Werde mal den Hinweis mit der Registry versuchen. @René König: Kannst Du Typ/Hersteller eines 'All in One'-Chips nennen? Schönen Gruss Noppes
Klar, schau Dir z.B. den CP2102 von SiLabs an: http://www2.silabs.com/tgwWebApp/appmanager/tgw/tgwHome?_nfpb=true&_pageLabel=GenericContentPage&contentObjectId=/public/web_content/products/Microcontrollers/Interface/en/interface_documentation.htm Kein Quarz nebst Kondensatoren, keine Widerstände, kein EEPROM, ...
Nicht schlecht, allerdings - zumindest für HobbyBastler - praktisch nicht verwendbar! Wie soll man das Teil denn löten? Ist doch (fast) unmöglich, oder? Außerdem ist der Baustein nicht gerade leicht zu beschaffen. Also für Hobbyzwecke wohl doch besser der FTDI-Standardbaustein. Mal abgesehen davon, dass das Problem hier eher bei Windows liegt als beim Chip :-/ Vielleicht lohnt sich f.d. Zukunft aber mal ein Versuch! @Rene: Woher beziehst Du den Baustein? Hast Du denn schon selbst (hand-)verbaut?
> Woher beziehst Du den Baustein? Meine SiLabs-Bausteine habe ich bislang über Mouser oder DigiKey bezogen. Das war ganz einfach. :) > Hast Du denn schon selbst (hand-)verbaut? Ich muß gestehen: Nein. Ich habe bislang noch nie eine USB <-> UART Bridge verbaut. Ich verwende viel lieber 'echte' USB-Controller, z.B. den F320 (ebenfalls SiLabs). Das ist dann wirklich eine 'All In One' Lösung.
Hallo ! Verwende ebenfalls FTDI chips (232BM) (OHNE eeprom zur zeit - platine ist aber vorbereitet und chips liegen schon bereit) für eine kleine serie von jetzt 13 Stk. Bei 6 stk die ich getestet habe gab es keine probleme unter win ME, ausser dass heute unerklärlicherweise das angeschlossene gerät als USB ballpoint-mouse erkannt wurde und win me abstürzte. nach deinstalltion der treiber ging alles wieder... ansonsten erhalte ich über die vcp treiber von ftdi com3 oder com4. nach treiberdeinstallation wieder aufs neue com3/com4 und die kommunikation (57600 baud) klappt einwandfrei. linke usb buchse immer com3, rechte immer com4 (bei mir so) ABER: ----- jetzt gehts los: unter xp berichtet ein anwender dass er zwar die usb hardware erkannt bekommt und xp brav den vcp treiber installiert, bei ihm com5. Aber alle auf die schnittstelle zugreifen wollenden programme (auch hyperterminal) melden daß die schnittstelle bereits in benuzung wäre. auch eine selbst geschriebene anwendung "grayt" die schnittstelle aus, weil nicht verfügbar. über die api kriege ich aber nicht mehr informationen heraus. frage: was ist da los ? antiviren-sw ? admin-rechte für xp-zugriff auf vcp notwendig ? kennt jemand eine software die auskunft gibt über die anwendungen die gerade auf eine schnittstelle zugreifen ? da ich leider kein xp habe und auch nicht wg eines einzelnen problems mir das zulegen will, stehe ich etwas ratlos da... michael
Hi du kannst ja mal mit dem Process Explorer von www.sysinternals.com auf die Jagd nach dem Prozess machen der /device/VCPx offen hat. Matthias
hallo matthias ! der processexplorer und filemon sind sehr interessant, aber es ist das programm portmon bei denen das die aktivitäten aller port und somit seriellen schnittstellen beobachtet. morgen werde ich dann vielleicht wissen was da los ist. dank erstmal !
Der Process Explorer ist aber dennoch das Tool der Wahl, weil mit ihm herausgefunden werden kann, welcher Prozess ein bestimmtes Handle geöffnet hat. "Find Handle" aufgerufen, "COM5" eingetippt und -schwupps- steht da, wer's befummelt.
erstes ergebnis mit portmon gibt rätsel auf: also pc gebootet, ftdi vcp com4 im gerätemanager denn ein gerät mit ftdi-chip steckt und sendet alle 10 sekunden daten. ok. terminal.exe (übrigens ein ganz praktisches programm - besser als die krücke ht) erkennt com 4, und kann daten empfangen. terminal wieder beendet und portmon getsartet. dies zeigt einen weissen screen, es ist also nix los. auch richtig. terminal gestartet: portmon zeigt gleich hohe aktivität: alle ports bis com 10 werden versucht zu öffnen (umzu sehen ob sie frei sind) usw... man kann auch die lesezugriffe erkennen. soweit so gut. eigene software wird auch als "zugreifer" erkannt und man kann jeden einzelnen api-aufruf mitverfolgen. bei der datenübertragung mit 57600 baud kommt portmon aber nicht mehr mit: blue-screen. allerdings läuft der pc auch nur mit 233 MHz...nach eintippen von return sind beide programme nicht mehr aktiv und OH WUNDER: der gerätemanager zeigt com4 weiter als funktionsbereite com-schnittstelle, aber alle programme können nicht darauf zugreifen. portmon zeigt nun wieder einen weissen screen. hmmmm..... jetzt bleibt nur noch ein weg: kleines programm schreiben und die exakte fehlermeldung beim öffnungsversuch mitprotokollieren, vielleicht lässt sich der grund finden. bis jetzt hatte ich einfach nur auf einen "valid handle" bei openfile getestet, und wenn er nicht valid war nahm ich an die schnittstelle steht nicht zur verfügung.
"OH WUNDER: der gerätemanager zeigt com4 weiter als funktionsbereite com-schnittstelle, aber alle programme können nicht darauf zugreifen." Wie gerade schon gepostet: Sieh' Dir Dein System mal mit dem Process Explorer (anstelle von portmon) an und such' nach dem Handle. Hilft übrigens auch bei Dateiproblemen.
@rufus bei mir findet der process explorer über COMx nichts. die seriellen schnittstellen findet man, wie matthias schon schrieben nur über eine handle suche nach \device\ und vcp bei virtuellen bzw serial bei echten
Und welcher Prozess blockiert bei Deinem Störfall dann das \device\vcpX/serial-Handle? Das sollte der PE schon anzeigen, sonst würd' ich ja auch nicht so darauf 'rumreiten ...
wenn ich mit einem Programm mein COM1 öffne, dann steht in den Details des Programms: \Device\Serial0 such mal nach Serial5 oder so?!
Hi es ist eben nicht serial5. Die FTDI-Chips hängen in /device/vcpx. Matthias
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.