Other Parts Discussed in Thread: C2000WARE
Hello TI(Sal),
OK - to continue on this thread:
I found in my app I have to do the following in usb_dev_serial.c :
In the:
// USBUARTRXIntHandler - Interrupt handler for the UART RX which is being
// redirected via USB.
__interrupt void USBUARTRXIntHandler(void) -
At the end of this IRQ handler I've had to put the following:
UARTIntClear(UART1_BASE, UARTIntStatus(UART1_BASE, false)); (I'm using UART1 vs. UART0.)
If I don't clear the IRQ's; the handler will not process any more messages; it'll just stop after getting the first message.
Note, I've tried looking at all of the status registers on SCI-B and USB0; and I can't find what the issue is here.
But, if I put that in; the IRQ handler at least keeps processing messages.
As a test, to make sure everything is working OK - I put the following in an 'idle' task:
uint8_t ui8Char;
ui8Char = 'A';
USBBufferWrite(&g_sTxBuffer, (uint8_t *)&ui8Char, 1);
A's were printed out on my usb/serial connection to the '69 USB I/F - so that works just fine.
But, I'm not sure why I had to call the UARTIntClear(); command to keep the IRQ running properly.
Any help appreciated.
Thanks,
John W.
