Hi,
We have a problem with the example imported with the SDK (version 2.8.2) with MCUxpresso when using a MK22FN512xxx12. The imported example is called "dev_cdc_vcom_bm", and it works fine: you can open the serial port, and everything you write, it echoes the characters back. The problem comes when in the APPTask() you comment this line:
if (s_sendSize)
{
uint32_t size = s_sendSize;
s_sendSize = 0;
//error = USB_DeviceCdcAcmSend(s_cdcVcom.cdcAcmHandle, USB_CDC_VCOM_BULK_IN_ENDPOINT, s_currSendBuf, size);
if (error != kStatus_USB_Success)
{
/* Failure to send Data Handling code here */
}
}
In other words, we want to receive characters without sending anything back. When this happens, the serial port just hangs, as well as the USB peripheral (doesn't generate any more IRQs).
Another thing which seems weird to us is that when we send some data, the IRQ calls the event "kUSB_DeviceCdcEventSendResponse", where it's called the "USB_DeviceCdcAcmRecv" function. Why the Tx and Rx are dependent? We've seen other stacks where you can receive and send data regardless of each other, at the end, we try to emulate a UART, right?
Can anyone else reproduce this issue or has any clues on how to solve it?
Thanks!