2017-07-20 05:51 AM
We are using above mentioned device (STM32F765BI) MCU in customized board. I need some clarification on USB interfaces
.
1. How many Full speed & High speed USB interface available in this device .
2. As per reference manual it has two USB PHY (OTG FS and OTG HS), So can I use one USB interface in full speed & another USB interface in high speed mode without using any external phy (ULPI interfaced PHY).3. some pins are conflicting with USB_ID,USB_VBUS & SOF pins, So I want to know whether these pins can be avoidable ( want to use both two USB interfaces) and corresponding setting can be done by software.4. What is maximum possible frame size in both USB HS & FS modes#stm32f7-discovery2017-07-20 11:05 AM
Dear Edwin,
For STM32F765BI :
1) we have two Peripherals od USB. Both can do Full speed with embedded PHY, but only one can do High speed with External ULPI PHY.
2) For High speed you need an external ULPI PHY.
3) Yes, all of these pins can be available by Software for other Function. Just take care of Vbus signal when you are in device or Host operation properly.
4) max frame rate will depend on your application and your stack usage / example. but from silicon/HW point of view we can reach max USB specs throughput.. But it is not a practical case, with other functions. DMA is recommended to offload CPU in High speed
5) if you need one Full speed and 1 High speed with embedded PHY , use our Recent STM32F72xx MCUs.
Cheers,
STOne-32.
2017-07-21 12:39 AM
Hi.,
Thanks for immediate response .
3) Need more clarification. -> I want to use both USB interface available on device (both in FS mode), but need to avoid VBUS,SOF & USB_ID pins since those pins are conflicting with other interfaces. Is this possible to use both USB interfaces(either in host/device mode) by taking only OTG_FS_DP & DM,OTG_HS_DP & DM.
> Can you please elaborate about usage of USB_ID & SOF pins (functionalities).I have no idea on those pins.
4) As per reference manual to set endpoint size 11 bit is available, is that mean to say a single frame can carry maximum of 2KB(2^11) at a time.
XFRSIZE field of OTG_DOEPTSIZ register . (STM32f7_RM.pdf manual)
2017-07-21 02:05 AM
To my knowledge, if the USB interface is only used as device, DP/DM are what you mostly need, otherwise, extra lines would be needed to control to detect power surge and flip the external power switch. Maybe by looking at Discovery board schematics some tech info can be learnt.
For future part selection, keep in mind that STM32F723 has USB HS physical transceiver built-in (no ULPI needed).
2017-07-21 03:54 AM
As per my knowledge In host mode USB_DP & DM pins from MCU are enough, VBUS(+5V) can be provided by using onboard supply.
But in device mode how to detect cable connection without using VBUS pin of MCU. Is there any ways to avoid VBUS pin on MCU.
In our scenario(Device mode usage) I don't want any cable detection steps, lets assume(presence of cable) and initialize USB part in MCU. Any how enumeration starts once device receive RESET interrupt from host so that we skip usb cable detection steps also can avoid VBUS pin connection to MCU. Is this possible/not .
2017-07-22 02:44 AM
4) If device support Full speed USB , we can send at 12Mbps data rate as per usb standards. What are the possible ways (like packet size ,frame size & Frame interval time ) so that I can get 12Mbps data rate. please provide clear details.
In our scenario we are customizing standard USB example to simple bulk usb transfer using two bulk endpoint.(1 control endpoint, 1 Bulk IN & 1 Bulk OUT endpoints).
>> How DMA contributing in increasing the USB speed . Can you give some idea on how to use DMA interface in our customized USB example.?
Thank you..,
2017-07-23 12:22 PM
Hi,
DMA will not increase the USB rate to reach 12Mbits, But will free the CPU at MCU level to do other important control instead of copying bulk data to\From a Host. For bulk transfer you can reach max usb specs if the usb bus from Host is free. 64 bytes by a bulk transaction, that would target 16 x 64 bytes by 1ms Frame (SOF).
Cheers
STOne-32.
2017-07-24 04:30 AM
Thanks for the reply.,
>> 64bytes per packet & 1frame/1ms -> Is this standard spec supported by hardware or Is there any chance to increase those parameters.
I want to collect data from multiple channel audio information from codec and need to transfer this huge data from one board to another board(both card has STM32F765BI MCU) and need to reduce CPU interruption in transferring data to/from host.
>> which one is better either bulk transfer or isochronous transfer method ?
>> Is there any possibility to increase the bulk Endpoint size beyond 64bytes(because endpoint register has 11 bit to set transfer size so that we can set up to 2Kbytes (2^11) ).