@ -64,21 +64,24 @@ void CDC_Device_ProcessControlRequest(USB_ClassInfo_CDC_Device_t* const CDCInter
if ( USB_ControlRequest . bmRequestType = = ( REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE ) )
{
Endpoint_ClearSETUP ( ) ;
Endpoint_Read_Control_Stream_LE ( & CDCInterfaceInfo - > State . LineEncoding , sizeof ( CDCInterfaceInfo - > State . LineEncoding ) ) ;
EVENT_CDC_Device_LineEncodingChanged ( CDCInterfaceInfo ) ;
Endpoint_ClearIN ( ) ;
EVENT_CDC_Device_LineEncodingChanged ( CDCInterfaceInfo ) ;
}
break ;
case REQ_SetControlLineState :
if ( USB_ControlRequest . bmRequestType = = ( REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE ) )
{
Endpoint_ClearSETUP ( ) ;
Endpoint_ClearSETUP ( ) ;
CDCInterfaceInfo - > State . ControlLineStates . HostToDevice = USB_ControlRequest . wValue ;
EVENT_CDC_Device_ControLineStateChanged ( CDCInterfaceInfo ) ;
Endpoint_ClearStatusStage ( ) ;
EVENT_CDC_Device_ControLineStateChanged ( CDCInterfaceInfo ) ;
}
break ;
@ -86,10 +89,9 @@ void CDC_Device_ProcessControlRequest(USB_ClassInfo_CDC_Device_t* const CDCInter
if ( USB_ControlRequest . bmRequestType = = ( REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE ) )
{
Endpoint_ClearSETUP ( ) ;
EVENT_CDC_Device_BreakSent ( CDCInterfaceInfo , ( uint8_t ) USB_ControlRequest . wValue ) ;
Endpoint_ClearStatusStage ( ) ;
EVENT_CDC_Device_BreakSent ( CDCInterfaceInfo , ( uint8_t ) USB_ControlRequest . wValue ) ;
}
break ;