Wie kann man feststellen, ob am VBUS-Pin (Device Appl. EVK 1100) des
UC3A USB-Versorgungsspannung anliegt ohne zusätzlichen Portpin zur
Detektion anzuschliessen?
Ich habe da in der usb_drv.h ein Macro gefunden:
#define Is_usb_vbus_high() (Tst_bits(AVR32_USBB_usbsta,
AVR32_USBB_USBSTA_VBUS_MASK))
Ein Blick ins Datenblatt (S. 544) sagt:
• VBUS: VBus Level
Set/cleared by hardware and reflects the level of the VBus line, even if
USBE = 0.
Wenn ich das Board am USB angeschlossen habe und in meiner Init-Routine
die Abfrage mache:
if (Is_usb_vbus_high())
{
gpio_clr_gpio_pin(LIFE_LED);
}
führt er die Anweisung (clr) nicht aus.
Hab ich da was falsch verstanden? Muss vorher noch was anderes
konfiguriert werden? Ideen und Ratschläge sind willkommen.
Ich kenne den UC3A nicht, aber wenn der USB-Makro dort der gleiche ist wie im AT90USB1287, dann muss man wohl das VBUS-Pad (das beim '1287 als "OTG Pad" falsch benannt ist) vorher aktivieren.
Danke Jörg! Hab ich gestern Abend ausprobiert und in der Tat, es ist genauso. Jetzt erkennt er auch VBUS.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.