How to get callback 'CDC_TransmitCplt_FS(.......)' invoked
Hallo everyone,
Before I encountered a bug in an USB_OTG_FS library function (see previous post), I struggled to find out when the function 'CDC_Transmit_FS(uint8_t* Buf, uint16_t Len)' has finished, meaning the content of the 'Buf' argument is completely transmitted.
After a thorough search through the various sources and the Reference manual RM068, I concluded the Register DOETMSK has a bit XFRCM that should fire an interrupt in case the the transmission has finished. I assume the common interrupt function ' HAL_PCD_IRQHandler(&hpcd_USB_OTG_FS)' will deduce that function 'CDC_TransmitCplt_FS(.......)' should be fired when the XFRCM creates an interrupt.
Despite my efforts I could not find a way to:
a) find out if my assumptions above are complete and/or correct
b) how to handle the registers for the USB_OTG_FS device. In the SWF column of the debugger I saw 4 groups of OTG registers, but never found a way to access them in my code. And the complexity of this device, together with an overwhelming amount of typedefinitions, structures and enums makes it very difficult to deduce the rules for Register access.
Can someone shed some light on these issues? I will appreciate any help.
Thanks in advance,
Fred Schimmel
