cancel
Showing results for 
Search instead for 
Did you mean: 

stm32f107 usb-otg can not produce interruption after long running

yexm_it
Associate
Posted on July 05, 2012 at 14:17

hi

 STM32 experts, i am using stm32f107 usb-otg interface, and an function is virtual com port,i.e. receive UART data then send to PC go through usb-otg interface,i am using VCP_V1.3.1_Setup.exe driver that installed on PC, and the usg-otg lib is STM32_USB-FS-Device_Driver 3.3.0).

 The problem is I using USB_SIL_WRITE(EP1_IN,buff,len) funtion to send received data to PC periodically, and the OTGD_FS_Handle_InEP_ISR interruption function will be called when usb tx traffic completed.

 This fucntion can run very well about 10min or more longer, but it will not produce  OTGD_FS_Handle_InEP_ISR  interrupt anymore at some times,i.e.after USB_SIL_WRITE, usb-otg not produce any interruption about completed, or time-out,error or something else.

 This function work well on STM32103 not otg inteface.

Brs,

#stm32-usb-otg
2 REPLIES 2
yexm_it
Associate
Posted on July 07, 2012 at 12:31

the problem have resolved. It caused by setting otg interruption priority lower than UART,and now i set ogt is the highest one.

 so it means if stm32f10x usb-otg interruption interrupted by another higher one, it will not enter interruption anymore.

 ST need check this problem :p

Posted on July 07, 2012 at 18:43

I guess it would depend a lot on what you're doing in the USART IRQ, and how tight the service window is for the OTG IRQ.

You might want to try the March 2012 library to see if any outstanding issues were addressed.

You might also want to fashion an example project which demonstrates the failure mode, this is the usual manner in which you get silicon vendors to confirm and address issues with the chip or supporting software. Deliver that to your ST rep or FAE.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..