USB – STR71x and FreeRTOS

Hi! Do I need to make the RTOS handle all the USB standard requests or can I just let it happend in interrupts? I will then use the RTOS queues for collecting data from the data endpoints. Best regards, Frank Andersen

USB – STR71x and FreeRTOS

Not quite sure what you are asking here.  You have the design choice of handling USB events from the interrupt service routine if you want.  If the event is going to take a long time to process then it is best to let a task perform the processing.  Maybe you want some events processed directly in the ISR and some passed to a task.

USB – STR71x and FreeRTOS

Hello, I’m trying to do the same thing.  Use an str711 with usb and IAR.  What interrupt handlers do I need to include to get the usb to work, so far I only have an example of how to use the uart handler with freeRtos (that was included with the iar build) thanks for any help

USB – STR71x and FreeRTOS

You need to write an interrupt handler like the one for uart         RSEG ICODE:CODE         CODE32         EXTERN USB_Istr         PUBLIC vUSBISREntry ; Wrapper for the USB interrupt service routine.  This can cause a ; context switch so requires an assembly wrapper. ; Defines the portSAVE_CONTEXT and portRESTORE_CONTEXT macros. #include "ISR_Support.h" vUSBISREntry:     portSAVE_CONTEXT            ; Save the context of the current task.     bl    USB_Istr            ; Call the ISR routine.     portRESTORE_CONTEXT            ; Restore the context of the current task –                                 ; which may be different to the task that                                 ; was interrupted.         END and then exchange the DefaultISR with vUSBISREntry at the USBLP_Addr and the USBHP_Addr Best regards, Frank Andersen