V2.0
This commit is contained in:
@@ -323,9 +323,9 @@ void UART2_USB_Init( void )
|
||||
UART2_Init( 0, baudrate, stopbits, parity );
|
||||
|
||||
/* restart usb receive */
|
||||
USBOTG_FS->UEP2_DMA = (uint32_t)(uint8_t *)&UART2_Tx_Buf[ 0 ];
|
||||
USBOTG_FS->UEP2_RX_CTRL &= ~USBFS_UEP_R_RES_MASK;
|
||||
USBOTG_FS->UEP2_RX_CTRL |= USBFS_UEP_R_RES_ACK;
|
||||
USBFSD->UEP2_DMA = (uint32_t)(uint8_t *)&UART2_Tx_Buf[ 0 ];
|
||||
USBFSD->UEP2_RX_CTRL &= ~USBFS_UEP_R_RES_MASK;
|
||||
USBFSD->UEP2_RX_CTRL |= USBFS_UEP_R_RES_ACK;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
@@ -350,8 +350,8 @@ void UART2_DataTx_Deal( void )
|
||||
|
||||
Uart.Tx_Flag = 0x00;
|
||||
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
|
||||
/* Calculate the variables of last data */
|
||||
count = Uart.Tx_CurPackLen - DEF_UART2_TX_DMA_CH->CNTR;
|
||||
@@ -371,12 +371,12 @@ void UART2_DataTx_Deal( void )
|
||||
/* If the current serial port has suspended the downlink, restart the driver downlink */
|
||||
if( ( Uart.USB_Down_StopFlag == 0x01 ) && ( Uart.Tx_RemainNum < 2 ) )
|
||||
{
|
||||
USBOTG_FS->UEP2_RX_CTRL &= ~USBFS_UEP_R_RES_MASK;
|
||||
USBOTG_FS->UEP2_RX_CTRL |= USBFS_UEP_R_RES_ACK;
|
||||
USBFSD->UEP2_RX_CTRL &= ~USBFS_UEP_R_RES_MASK;
|
||||
USBFSD->UEP2_RX_CTRL |= USBFS_UEP_R_RES_ACK;
|
||||
Uart.USB_Down_StopFlag = 0x00;
|
||||
}
|
||||
|
||||
NVIC_EnableIRQ( USBHD_IRQn );
|
||||
NVIC_EnableIRQ( USBFS_IRQn );
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -416,8 +416,8 @@ void UART2_DataRx_Deal( void )
|
||||
uint16_t packlen;
|
||||
|
||||
/* Serial port 1 data DMA receive processing */
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
UARTx_Rx_DMACurCount = DEF_UART2_RX_DMA_CH->CNTR;
|
||||
if( UARTx_Rx_DMALastCount != UARTx_Rx_DMACurCount )
|
||||
|
||||
@@ -446,7 +446,7 @@ void UART2_DataRx_Deal( void )
|
||||
/* Setting reception status */
|
||||
Uart.Rx_TimeOut = 0x00;
|
||||
}
|
||||
NVIC_EnableIRQ( USBHD_IRQn );
|
||||
NVIC_EnableIRQ( USBFS_IRQn );
|
||||
|
||||
/*****************************************************************/
|
||||
/* Serial port 1 data processing via USB upload and reception */
|
||||
@@ -476,8 +476,8 @@ void UART2_DataRx_Deal( void )
|
||||
/* Upload serial data via usb */
|
||||
if( packlen )
|
||||
{
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
Uart.USB_Up_IngFlag = 0x01;
|
||||
Uart.USB_Up_TimeOut = 0x00;
|
||||
USBFS_Endp_DataUp( DEF_UEP3, &UART2_Rx_Buf[ Uart.Rx_DealPtr ], packlen, DEF_UEP_CPY_LOAD );
|
||||
@@ -495,7 +495,7 @@ void UART2_DataRx_Deal( void )
|
||||
Uart.USB_Up_Pack0_Flag = 0x01;
|
||||
}
|
||||
|
||||
NVIC_EnableIRQ( USBHD_IRQn );
|
||||
NVIC_EnableIRQ( USBFS_IRQn );
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -517,14 +517,14 @@ void UART2_DataRx_Deal( void )
|
||||
{
|
||||
if( Uart.USB_Up_TimeOut >= ( DEF_UARTx_RX_TIMEOUT * 20 ) )
|
||||
{
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBHD_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
NVIC_DisableIRQ( USBFS_IRQn );
|
||||
Uart.USB_Up_IngFlag = 0x01;
|
||||
Uart.USB_Up_TimeOut = 0x00;
|
||||
USBFS_Endp_DataUp( DEF_UEP3, &UART2_Rx_Buf[ Uart.Rx_DealPtr ], 0, DEF_UEP_CPY_LOAD );
|
||||
Uart.USB_Up_IngFlag = 0;
|
||||
Uart.USB_Up_Pack0_Flag = 0x00;
|
||||
NVIC_EnableIRQ( USBHD_IRQn );
|
||||
NVIC_EnableIRQ( USBFS_IRQn );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user