FTDI (bus powered) soll angeschlossene Logik resetten

Gast #1541528
Lesenswert?

Hallo,


da ich aus den Datenblättern nicht ganz schlau geworden bin folgendes 
Problem. Ich habe einen Controller der via FTDI mit einem Rechner 
verbunden werden kann (Versorgung über USB).

Problem: Ich möchte auf dem Host via SW den Controller zurücksetzen 
können ohne das Kabel abzuziehen und wieder anzustecken.

Der FTDI bietet SUSPEND und PWREN Signale. PWREN wird gesetzt sobald der 
Rechner das USB-Gerät erkannt hat. Den USB-Suspend Mode habe ich nicht 
gänzlich verstanden, er wird offenbar eingenommen wenn eine gewisse Zeit 
Ruhe auf dem Bus ist.

Die FTDI Lib bietet spärlich dokumentierte Funktionen wie ResetDevice() 
und ResetPort(). Hat eine dieser Funktionen Auswirkungen auf die beiden 
genannten Pins?

Gibt es einen anderen (eleganten) Weg beim Öffnen der 
Kommunikationsverbindung für einen Reset zu sorgen?


Besten Dank,
Alex
Persönliche Seite #1541574
Lesenswert?

Nein, SUSPEND wird nur gesetzt wenn der Rechner in einen Ruhezustand 
uebergeht. Der soll das gesamte USB-Geraet abschalten. Die 
Handshake-Leitungen wuerde ich fuer sowas nicht nehmen, die braucht man 
ja fuer eine stabile Datenuebertragung.

Du kannst im BitBang-Modus die Bus-Leitungen benutzen, um zusaetzliche 
Dinge zu steuern. Allerdings habe ich das anders gemacht: Ich habe den 
watchdog des Controlers benutzt, um diesen mit einem Befehl zu resetten, 
indem man in dann einfach in eine Endlosschleife schickt.

Michael

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren