Hallo,
Ich habe folgendes Problem: Ich verwende FT232R Chip unter WinXP und
Windows 7, Jedes mal wenn in der Nähe eine induktive Last ein- oder
ausgeschalten wird, geht die Verbindung verloren. Unter Windows 7 ist
das kein Problem, weil das Betriebsystem die Verbindung wieder aufnimmt.
Unter WinXP geht das leider nicht und ich muss entweder den Chip
abstecken und wieder anstecken oder im Gerätemanager den "USB Serial
Converter" unter "USB-Controller" deaktivieren und wieder aktivieren.
Nachdem die Hard und Software über Stunden unbeobachtet laufen soll,
kann ich beides nicht machen. Jetzt stellt sich mir die Frage, ob es
eine Möglichkeit gibt via Software den "USB Serial Converter" zu
deaktivieren und dann wieder aktivieren?
Ich verwende als Compiler und IDE LabWindows/CVI
Danke im Vorraus,
Stefan
Stefan_H schrieb:> Hallo,>> Ich habe folgendes Problem: Ich verwende FT232R Chip unter WinXP und> Windows 7, Jedes mal wenn in der Nähe eine induktive Last ein- oder> ausgeschalten wird, geht die Verbindung verloren. Unter Windows 7 ist> das kein Problem, weil das Betriebsystem die Verbindung wieder aufnimmt.> Unter WinXP geht das leider nicht und ich muss entweder den Chip> abstecken und wieder anstecken oder im Gerätemanager den "USB Serial> Converter" unter "USB-Controller" deaktivieren und wieder aktivieren.>> Nachdem die Hard und Software über Stunden unbeobachtet laufen soll,> kann ich beides nicht machen. Jetzt stellt sich mir die Frage, ob es> eine Möglichkeit gibt via Software den "USB Serial Converter" zu> deaktivieren und dann wieder aktivieren?>> Ich verwende als Compiler und IDE LabWindows/CVI>> Danke im Vorraus,>> Stefan
Hallo Stefan,
hast Du schon mal versucht den Rechner per USV vom Stromnetz zu
entkoppeln.
Ich würde erst mal versuchen durch solche Maßnahmen das Problem an sich
zu vermeiden.
Auf der seriellen Seite dann z.B. zusätzliche Abschirmung durch einen
Metallschlauch.
Hallo,
meldet der sich richtig über Plug&Play ab oder bleibt die Verbindung
hängen? Wenn nur die Verbindung hängen bleibt,liegt es vermutlich daran,
dass viele Datenfehler aufgelaufen sind und der Host die Endpunkte in
HALT setzt. Dann musst du die mit einem Clear_Feature(EP_HALT) wieder
loslaufen lassen, falls du die Möglichkeit hat.
Gruß
Hi,
hast du auf dem XP-Rechner zufällig das FT-Prog Tool von FTDI?
Damit kann man die ICs zurücksetzen um geänderte EEPROM-Daten zu
übernehmen, nach dem Reset melden sie sich komplett neu an.
Vielleicht kannst du da das Kommando mitschneiden und selber senden.
In der FTD2XX.dll von FTDI gibt's die Funktion FT_CyclePort, die genau
das macht.
"The effect of this function is the same as disconnecting then
reconnecting the device from USB. Possible use of this function is
situations where a fatal error has occurred and it is difficult, or not
possible, to
recover without unplugging and replugging the USB cable."
http://www.ftdichip.com/Support/Documents/ProgramGuides/D2XX_Programmer%27s_Guide%28FT_000071%29.pdf
Hallo Leute,
Danke für die Antworten... aber... ;-)
Störungen zu vermeiden wäre zwar super, ist aber durch gewisse Umstände
nicht möglich. Das Board war eigentlich nur für Tests und entwicklung
gedacht. Der FT232R liegt EMV-Technisch ganz schlecht und sie die
Datenleitung für USB liegt quer über das ganze Board.... Problem ist,
das das Board "irrtümlich" im Einsatz ist und ich die Sache ohne
Hardwareänderungen zum laufen bringen muss.
Bzgl. Clear_Feature(EP_HALT): Ich habe leider nur wenig Ahnung von USB
ansich. Ich Kann den fehler nur so beschreiben: Wenn der Fehler
Passiert, hört man das Typische Ab-/Anstecken-Geräusch von Windows XP
und der der Chip lässt sich nichtmehr ansprechen:
1
ftStatus=FT_Open(0,&ftHandle);
ftStatus ist immer 1 (invalid ftHandle)
Womit ich dann FT_CyclePort(ftHandle) nicht ausführen kann, da ich
keinen ftHandle habe.
Wie gesagt, das einzige was hilft ist USB-Stecker raus und wieder rein,
oder im Gerätemanager den "USB Serial Converter" deaktivieren und wieder
aktivieren.
glg,
Stefan
> ftStatus ist immer 1 (invalid ftHandle)>> Womit ich dann FT_CyclePort(ftHandle) nicht ausführen kann, da ich> keinen ftHandle habe.
Ist das Gerät überhaupt auf Geräteindex 0 zu finden bzw. was liefert
FT_CreateDeviceInfoList zurück?
Hallo,
Arc Net schrieb:>>> ftStatus=FT_Open(0,&ftHandle);>> > ftStatus ist immer 1 (invalid ftHandle)>>>> Womit ich dann FT_CyclePort(ftHandle) nicht ausführen kann, da ich>> keinen ftHandle habe.>> Ist das Gerät überhaupt auf Geräteindex 0 zu finden bzw. was liefert> FT_CreateDeviceInfoList zurück?
Ja, Gerät ist immer auf 0, wenn der Fehler auftritt, wird kein device
erkannt!
bluppdidupp schrieb:> http://stackoverflow.com/questions/1438371/win32-a...
Ja, das ist ein schritt in richtung lösung. Mit dem HH_Lib_Test kann ich
das entsprechende Device disablen und enablen, danach geht alles wieder.
Jetz muss ich es nur schaffen die Lib auf Labwindows umzuschreiben...
Melde mich wenn es neues gibt!
lg
Stefan
Hallo,
Xenu schrieb:> Es wäre einfacher das Microsoft-Tool DevCon zu benutzen und von Deinem> Programm aus aufzurufen:>> http://support.microsoft.com/kb/311272
;-) Danke, war grad dabei aus der HardwareHelpLib eine exe zu basteln
die mir das machen würde. Werde aber trotzdem die DevCon nehmen, danke
für den Tipp
lg
Stefan