Part Number: TMS320F28388D
Hi everyone,
I have a sensor sending data over UART, it is connected to the SCI C pin 13 on my F28388D. The baudrate is 9216000. The data is 28 bytes starting with 0x91:
91 FF FF BC FF FF 8F 00 02 13 00 FF F1 08 FF FC FB 03 FF 5F 00 9F 01 FB 4C 76 47 4A
I am able to see the data coming with my logic analyzer, and I am able to see the data using another program that calls SCI_readCharArray in my main loop. So I know the hardware is OK
To be more efficient I would like to use interrupts to receive the data and put them in a buffer.
I started with the sci_ex2_loopback_interrupts example and replaced the SCI A to SCI C and the pinout of the RX to pin 13.
I also disable the SCI_enableLoopback and remove the stuff for the TX interrupt that I don't need (receive data only).
I change the clock to get 200Mhz so I am able to get my 921600 baudrate:
in the device.c :
SysCtl_setLowSpeedClock(SYSCTL_LSPCLK_PRESCALE_1);
and device.h
#define DEVICE_LSPCLK_FREQ (DEVICE_SYSCLK_FREQ / 1)
The fifo level expects that 2 elements of data are received before the ISR is hit, but when I run the code it's stay in the loop and the interrupt is never called.
I have one concern, why INTERRUPT_ACK_GROUP9 has been chosen for the Interrupt_clearACKGroup? Might it be an issue using SCI-C?
I attached my project if you want to take a look.
Thank you







.