Ich baue ein Gerät mit USB-C, das als USB-Host fungiert, aber für Firmware-Updates muss es als USB-Gerät an einen PC angeschlossen werden. Das Gerät hat keine Batterie und sollte während der Firmware-Updates von seiner normalen Stromquelle getrennt und über den PC mit Strom versorgt werden. Meiner Meinung nach schließt dies ICs wie den WUSB3801 aus. Es wäre ok, vor dem Einstecken einen Schalter zu drücken, um den Bootloader-Modus zu aktivieren (ähnlich wie beim rp2040). Mein Problem ist, dass ich nicht weiß, wie ich zwischen den 5,1k-Widerständen zu GND (für das Gerät) und den 22k-Widerständen zu VCC (für den Host) an CC1/CC2 umschalten kann. Die einzige Idee die ich hatte war jeden 5,1k-Widerstand mit einem depletion mode p-channel Mosfet und jeden 22k-Widerstand mit einem enhancement mode n-channel Mosfet zu verbinden. Dann lässt die MCU entweder die 5,1k-Widerstände „angeschlossen“ oder „verbindet“ die 22k-Widerstände, je nachdem, ob der Schalter für den Bootloaders gedrückt wird. Könnte das funktionieren, oder gibt es Alternativen wie fertige ICs, die unter diesen Umständen funktionieren?
Suche mal nach STM32 AN5225 "Introduction to USB Type-C® Power Delivery for STM32 MCUs and MPUs" und schau Dir Seite 21 an. Diese Apllication Note ist generisch genug, um auch für andere Prozessorfamilien nützlich zu sein. Einige Familien (z.B. STM32U5) haben auch SUpport für das Digitale PD Protokoll über CC1 und CC2. fchk
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.