Add explicit guards to all device mode tasks to ensure the device is connected and configured before running the task, to prevent any user tasks from locking up the main USB task if the device has not been properly configured.
This commit is contained in:
parent
bf50959b80
commit
67f390fe74
19 changed files with 245 additions and 216 deletions
|
@ -284,6 +284,10 @@ void Ethernet_Task(void)
|
|||
outgoing frames should be loaded into the FrameOUT structure. Both structures can only hold a single
|
||||
Ethernet frame at a time, so the FrameInBuffer bool is used to indicate when the buffers contain data. */
|
||||
|
||||
/* Device must be connected and configured for the task to run */
|
||||
if (!(USB_IsConnected) || !(USB_ConfigurationNumber))
|
||||
return;
|
||||
|
||||
/* Check if a frame has been written to the IN frame buffer */
|
||||
if (FrameIN.FrameInBuffer)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue