mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik FTDI FT232R toggelt DTR und RTS Leitung beim Anstecken


Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich hab folgendes Problem:

Ich verwendete die RTS und DTR Leitung vom FT232R, um einen MSP430 in 
den Bootloader-Modus zu versetzen. Dazu ist DTR am RESET und RTS am TCK 
von JTAG Port angeschlossen. Funktioniert auch soweit perfekt.

Das Problem ist nur, dass der USB-Chip beim Power-Up/Initialisierung die 
beiden Leitungen toggelt, dadurch wird beim anstecken von USB immer 
mehrere RESETs ausgelöst.

Weiß jemand ob es möglich ist die DTR/RTS Leitung beim Power-Up vom 
FT232 nicht toggeln zu lassen?

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du die die verschiedenen EEPROM-programmierbaren Pull-Up Optionen 
durchdacht? Fehlt evt ein externer Pull-Up?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei der Programmierung kann ich nichts einstellen und der FT232 toggelt 
mehrmals definitiv die beiden Leitungen beim Anstecken.

Ich hab gedacht, dass man das irgendwie abstellen kann....

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte das gleiche Problem. Hab dann einen Bootloader-Jumper zwischen 
RST und DTR gemacht. Damit war die Sache gegessen.

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Datenblatt sagt zu den Pins der "UART Interface and CBUS Greoup:
** When used in Input Mode, these pins are pulled to VCCIO via internal 
200kΩ resistors. These pins can be programmed to gently pull low during 
USB suspend ( PWREN# = “1” ) by setting an option in the internal 
EEPROM.

Bist Du sicher, dass der Treiber keinen Unsinn macht? Toggeln die Pins 
auch, wenn du den FT232R nur an einen spannungsversorgten Hub ohne 
angeschlossenes USB betreibst?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja es liegt am Treiber. Weil wenn ich den FT232 zum ersten Mal mitn PC 
verbinde (also in dem Fall, wenn der Treiber noch nicht geladen ist) 
dann toggelt er die PINs nicht.

Wurde aber einmal das Gerät erkannt und ein COM-Port zugewiesen, dann 
toggelt der Vogel die PINs bei jedem Anstecken. Ich benutz die VCP 
Treiber.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Chris

Blöd nur, dass die Platine in ein Gehäuse vergossen wird und nur noch 
der Mini-USB bzw. DC-Buchse rausguckt!

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wurde aber einmal das Gerät erkannt und ein COM-Port zugewiesen, dann
> toggelt der Vogel die PINs bei jedem Anstecken. Ich benutz die VCP
> Treiber.

Das könnte möglichweise an was ganz anderem liegen - Windows' 
Plug&Play-Erkennung untersucht serielle Anschlüsse auf angeschlossene 
Plug&Play-Hardware wie serielle Modems etc. - das Geklapper auf den 
Handshakeleitungen dürfte darauf zurückzuführen sein.

Möglicherweise lässt sich das Verhalten mit einem Registry-Eintrag 
beeinflussen. Auf http://www.microsoft.com/whdc/system/CEC/serddvr.mspx 
wird ein solcher namens SkipEnumerations  beschrieben:



HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\%Enumerator%\%Device_ID 
%  \%Instance_ID%\Device Parameters\SkipEnumerations

The use of SkipEnumerations in the Device Parameters key must
be used on a per-port basis. There is no global option to
change the behavior of all ports at once.

The REG_DWORD value name, SkipEnumerations, can contain the
following data:

• Zero or non-existent: Default Serenum behavior; each port
  will be scanned during every system boot.
  For example: SkipEnumerations\REG_DWORD\0x00000000 (0)

• 0xffffffff: Serenum will never scan the ports, either
  automatically or through user-initiated scans in Device
  Manager or Hardware Wizard. Any device attached to a port
  with this value in the registry will need to be installed
  manually.
  For example: SkipEnumerations\REG_DWORD\0xffffffff (4294967295)

• If any other value is used, Serenum will skip that number
  of scans (boots or user-initiated). The successive scan
  will behave normally (similar to the setting of zero).
  Once the value goes to zero, it will stay at zero until
  Serenum.sys is unloaded and reloaded. At this point, it
  will be reset to the original registry value.
  For example: SkipEnumerations\REG_DWORD\0x00000003 (3)

  In this example, the data value is set to 3. Serenum will
  skip 3 scans. After the 3 scans, it will perform a normal scan.


Also erscheint es mir untersuchenswert, diesen Parameter auf -1 zu 
setzen.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Notfalls kannst du ja auch das Programm auf dem MSP430 so abändern, dass 
es beim Starten den RST erst mal deaktiviert. Per Kommando (ich nehme 
mal an, man kann mit dem MSP430 irgendwie kommunizieren) schaltet man 
dann den RST wieder frei, oder springt gleich zum Bootloader. So wirds 
z.B. im TI-USB Debugger gemacht.

Irgendwo in der SLAA096 oder 089 steht ja aber eigentlich dass Windows 
gerne auf den HS-Leitungen klappert, und man muss das in der MSP430 
Software berücksichtigen ;)

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank Leute. Rufus genau des wars.

Hab dann herausgefunden, dass der FTDI-Treiber die Option bietet, die 
Enumeration nicht zu machen:

Und zwar im Geräte-Manager -> COMx -> Port Settings -> Advanced -> 
Serial Enumaration deaktivieren.

Autor: P. D. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan wrote:
> Vielen Dank Leute. Rufus genau des wars.
>
> Hab dann herausgefunden, dass der FTDI-Treiber die Option bietet, die
> Enumeration nicht zu machen:
>
> Und zwar im Geräte-Manager -> COMx -> Port Settings -> Advanced ->
> Serial Enumaration deaktivieren.


Hi, genau das selbe Problem habe ich hier auch. Es hat bei mir aber 
nicht sehr viel gebracht die Serial Enumeration zu deaktivieren. DTR und 
RTS toggeln immer noch nach einstecken des USB-Kabels. Allerdings nur 
noch halb so lange wie wenn die Serial Enumeration aktiviert ist.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.