BYTE getCDC_Out_ArmNext(void) { CDCFunctionError = 0; /* if (WaitOutReady()) { */ WaitOutReady(); if ((IsOutBufferA & 1)) { OutPtr = &cdc_Out_bufferA[0]; Outbdp->BDADDR = &cdc_Out_bufferB[0]; } else { OutPtr = &cdc_Out_bufferB[0]; Outbdp->BDADDR = &cdc_Out_bufferA[0]; } IsOutBufferA ^= 0xFF; cdc_Out_len = Outbdp->BDCNT; Outbdp->BDCNT = CDC_BUFFER_SIZE; Outbdp->BDSTAT = ((Outbdp->BDSTAT ^ DTS) & DTS) | UOWN | DTSEN; /* } else { cdc_Out_len = 0; CDCFunctionError = 1; } */ return cdc_Out_len; }//end getCDC_Out_ArmNext
BYTE getda_cdc(void) { CDCFunctionError = 0; WaitOutReady(); if ((IsOutBufferA & 1)) { OutPtr = &cdc_Out_bufferA[0]; CDC_Outbdp->BDADDR = &cdc_Out_bufferB[0]; } else { OutPtr = &cdc_Out_bufferB[0]; CDC_Outbdp->BDADDR = &cdc_Out_bufferA[0]; } IsOutBufferA ^= 0xFF; cdc_Out_len = CDC_Outbdp->BDCNT; CDC_Outbdp->BDCNT = CDC_BUFFER_SIZE; CDC_Outbdp->BDSTAT = ((CDC_Outbdp->BDSTAT ^ DTS) & DTS) | UOWN | DTSEN; #ifndef USB_INTERRUPTS usb_handler(); #endif return cdc_Out_len; }//end getCDC_Out_ArmNext