USB-Protokoll PIC32mx

Ich passe ein Design mit einem PIC32MX (das tatsächlich funktioniert) an, um ein zusätzliches Add-On hinzuzufügen. Das Add-On ist ein Fingerabdruckleser , der über UART kommuniziert. In Bezug darauf, dass ich die USB-Pins in meinem Design freigelegt habe, habe ich einen Weg gefunden, einen ftdi 3,3 V ( https://www.sparkfun.com/products/9716 ) zwischen UART und USB zu verbinden . Ich plane, meinen VCC (3,3 V in meinem Design, von dem ich glaube, dass es mir mehr als 200 mA geben kann) an das rote VUSB-Kabel anzuschließen. Die anderen Stifte sind geradeaus.

Also meine Fragen ab jetzt:

  • Der Zweck des VBUS-Pins am PIC32mx besteht darin, zu erkennen, ob ein Gerät angeschlossen ist oder nicht, richtig? Gibt es ein Problem, wenn ich es nicht verbunden lasse?

  • Muss ich den VBUSON-Pin irgendwo anschließen? Ich verwende bereits für etwas anderes (der Pin ist geteilt/nicht dediziert).

Hinweis: Ihr ftdi 3.3V zeigt auf "SparkFun FTDI Basic Breakout - 5V"
Dieser Sparkfun ftdi arbeitet entweder mit 3,3 V oder 5 V. Alles, was Sie tun müssen, ist, einen kleinen Jumper zwischen zwei Pads zu löten und die Standardverbindung zu trennen (wenn 3,3 V gewünscht sind).

Antworten (1)

F1: Nein. Der VBUS-Pin wird verwendet, wenn Ihr PIC32MX selbst als Gerät fungiert und dem USB-Modul des PIC32 mitteilt, wenn es an einen USB- Host (wie einen PC) angeschlossen wurde, indem es die nominalen 5 V erkennt, die vorhanden sein sollten.

F2: Wie das Handbuch uns sagt, ist der VBUSON-Pin "USB-Host- und OTG-Bus-Leistungssteuerungsausgang". Mit anderen Worten, dieser Pin schaltet den Vbus 5V-Ausgang von Ihrem Board ein / aus, wenn Ihr PIC32 als USB-Host fungiert.

Um eine Frage zu beantworten, die Sie nicht gestellt haben ... Ihr PIC32 muss als USB- Host arbeiten, damit Ihr FTDI USB UART von Nutzen ist. Dies bedeutet, dass es korrekt konfiguriert sein und einen USB- Host- Firmware-Stack ausführen muss.

Auf dem Datenblatt steht, dass der VBUS-Pin ein Eingang ist. Wie kann er also als 5-V-Ausgang fungieren? Der beste Weg, meinen Fingerabdruckleser mit genügend Strom zu versorgen, besteht darin, 3,3 V direkt vom Regler zu geben, oder? oder sollte ich einen MOSFET vom VBUSON-Pin platzieren? Danke.
Ja, der VBUS-Pin am PIC ist ein Eingang, aber wenn Ihr Board als USB- Host fungiert, muss es 5 V am Vbus-Pin des USB-Anschlusses liefern. Ihr FTDI USB UART erwartet zweifellos 5 V an seinem USB-Anschluss, die von Ihrem PIC kommen, und ich bezweifle, dass 3,3 V ihn glücklich machen werden. Sie benötigen einen 3,3-> 5-V-Aufwärtswandler, wenn Sie nicht bereits 5 V zur Verfügung haben, und der VBUSON-Pin vom PIC kann diesen bei Bedarf ein- und ausschalten. Ihren PIC32 als Host zu betreiben ist nicht ganz so "einfach", wie ihn als Gerät zu betreiben.
IIRC, die neuesten Teile von FTDI können wirklich mit nur 3,3 V betrieben werden – ich glaube nicht, dass Sie überhaupt 5 V benötigen, wenn die richtige SKU ausgewählt wurde. Ich denke, ihr interner VBUS-Komparator erwartet einen geteilten Wert, sodass Sie keine 5 V liefern müssen, aber dieser Kommentar stammt alles aus dem Speicher.
Was empfehlen Sie für eine schnellere Implementierung? Liefert der VBUS-Pin genug Strom für meinen Fingerabdruck? Es wird erwähnt, dass es ungefähr 130 mA benötigt, um zu funktionieren.
Finden Sie einen Weg, um an einige UART-Pins auf Ihrem PIC zu gelangen ...
Ich muss einige als PPS konfigurieren, aber es ist schwierig, einige Drähte ohne geeignete Pads zu löten. Danke trotzdem für den Tipp.