I’m hoping to create a USB high speed device based on an STM32 part.
I want to use a STM32F723 because it includes the HS PHY.
I’ve got a 32F723EDISCOVERY and created a custom target because it isn’t a target that is currently supported by Mbed OS .
I’ve got a simple test app running that demonstrates USB FS working.
Unfortunately getting USB HS working is a bit trickier and I was hoped you might be able to offer some advice.
There’s a problem in USBPhy_STM32.cpp. If you look at line 197 you’ll see the same preprocessor command appears twice, i.e. line 209 can never be included in the compilation. If this section of code was ever included it would be a problem because it doesn’t assign
Was the intention to provide the code needed to support an embedded HS PHY?
I think what I need is something like:
#if (MBED_CONF_TARGET_USB_SPEED == USE_USB_OTG_HS) ... #elif (MBED_CONF_TARGET_USB_SPEED == USE_USB_OTG_HS_EMBEDDED_PHY) hpcd.Instance = USB_OTG_HS; hpcd.Init.phy_itface = USB_OTG_HS_EMBEDDED_PHY; hpcd.Init.Sof_enable = 1; hpcd.Init.speed = PCD_SPEED_HIGH; map = PinMap_USB_HS;
USB_OTG_HS_EMBEDDED_PHY probably should not be used here because it comes from stm32f7xx_ll_usb.h.
I don’t understand the significance of the
USE_USB_HS_IN_FS configuration option. Was it intended to be related to HS embedded PHY? It’s odd that it doesn’t appear in any of the
#ifs because if it was used I think
map would not be assigned.
I’ve been trying to refer to the STM32F723E-Discovery examples in STM32CubeF7.