X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/9cec85bfd92a77a97e7d12625897de2682dfacd7..b3a4d8512bcaf0feba16a3cbeeaabfcfeb9cf051:/Demos/Device/DualCDC/DualCDC.c diff --git a/Demos/Device/DualCDC/DualCDC.c b/Demos/Device/DualCDC/DualCDC.c index 5d2dd5f90..34d772ff0 100644 --- a/Demos/Device/DualCDC/DualCDC.c +++ b/Demos/Device/DualCDC/DualCDC.c @@ -118,7 +118,7 @@ int main(void) /** Event handler for the USB_Connect event. This indicates that the device is enumerating via the status LEDs and * starts the library USB task to begin the enumeration and USB management process. */ -EVENT_HANDLER(USB_Connect) +void EVENT_USB_Connect(void) { /* Start USB management task */ Scheduler_SetTaskMode(USB_USBTask, TASK_RUN); @@ -130,7 +130,7 @@ EVENT_HANDLER(USB_Connect) /** Event handler for the USB_Disconnect event. This indicates that the device is no longer connected to a host via * the status LEDs and stops the USB management and CDC management tasks. */ -EVENT_HANDLER(USB_Disconnect) +void EVENT_USB_Disconnect(void) { /* Stop running CDC and USB management tasks */ Scheduler_SetTaskMode(CDC1_Task, TASK_STOP); @@ -144,7 +144,7 @@ EVENT_HANDLER(USB_Disconnect) /** Event handler for the USB_ConfigurationChanged event. This is fired when the host set the current configuration * of the USB device after enumeration - the device endpoints are configured and the CDC management tasks are started. */ -EVENT_HANDLER(USB_ConfigurationChanged) +void EVENT_USB_ConfigurationChanged(void) { /* Setup CDC Notification, Rx and Tx Endpoints for the first CDC */ Endpoint_ConfigureEndpoint(CDC1_NOTIFICATION_EPNUM, EP_TYPE_INTERRUPT, @@ -184,18 +184,10 @@ EVENT_HANDLER(USB_ConfigurationChanged) * control requests that are not handled internally by the USB library (including the CDC control commands, * which are all issued via the control endpoint), so that they can be handled appropriately for the application. */ -EVENT_HANDLER(USB_UnhandledControlPacket) +void EVENT_USB_UnhandledControlPacket(void) { - uint8_t* LineCodingData; - - /* Discard the unused wValue parameter */ - Endpoint_Discard_Word(); - - /* wIndex indicates the interface being controlled */ - uint16_t wIndex = Endpoint_Read_Word_LE(); - /* Determine which interface's Line Coding data is being set from the wIndex parameter */ - LineCodingData = (wIndex == 0) ? (uint8_t*)&LineCoding1 : (uint8_t*)&LineCoding2; + uint8_t* LineCodingData = (USB_ControlRequest.wIndex == 0) ? (uint8_t*)&LineCoding1 : (uint8_t*)&LineCoding2; /* Process CDC specific control requests */ switch (USB_ControlRequest.bRequest) @@ -207,7 +199,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket) Endpoint_ClearSETUP(); /* Write the line coding data to the control endpoint */ - Endpoint_Write_Control_Stream_LE(LineCodingData, sizeof(CDC_Line_Coding_t), Endpoint_MemSpaceCallback_RAM); + Endpoint_Write_Control_Stream_LE(LineCodingData, sizeof(CDC_Line_Coding_t)); /* Finalize the stream transfer to send the last packet or clear the host abort */ Endpoint_ClearOUT(); @@ -304,7 +296,7 @@ TASK(CDC1_Task) Endpoint_SelectEndpoint(CDC1_TX_EPNUM); /* Write the String to the Endpoint */ - Endpoint_Write_Stream_LE(ReportString, strlen(ReportString), Endpoint_MemSpaceCallback_RAM); + Endpoint_Write_Stream_LE(ReportString, strlen(ReportString)); /* Finalize the stream transfer to send the last packet */ Endpoint_ClearIN(); @@ -351,7 +343,7 @@ TASK(CDC2_Task) Endpoint_SelectEndpoint(CDC2_TX_EPNUM); /* Write the received data to the endpoint */ - Endpoint_Write_Stream_LE(&Buffer, DataLength, Endpoint_MemSpaceCallback_RAM); + Endpoint_Write_Stream_LE(&Buffer, DataLength); /* Finalize the stream transfer to send the last packet */ Endpoint_ClearIN();