2020-03-10 04:19 AM
Hi all,
I interfaced external(off board ADC) to stm32h743 microcontroller. i am receiveing data in spi interrupt mode. i enabled RXPIE interrupt.But the interrupt latency is increasing as Baud rate of SPI is increased.at lower speeds latency is small(KBPS around 5ons) but at higher speed around 40Mbps latency increased(1us) can i know the reason what all configarations should be made.
Any suggestion is highly appreciated.
Regards,
krishna.
2020-03-10 04:35 AM
This seems counter-intuitive. How are you measuring it?
If it is by detecting overrun / lost bytes in a sequence, remember that you'll only lose a byte if you fail to read that byte before the next one is received (which happens more rapidly if you're sending at a higher data-rate).
If you need a high throughput, you might be better off using DMA to transfer incoming data to a buffer in memory.
Hope this helps,
Danish
2020-03-10 04:45 AM
> This seems counter-intuitive. How are you measuring it?
I would agree.
Perhaps you get the handler runtime involved (tailgating).
You don't use Cube and it's dreaded callbacks, do you ?
2020-03-10 05:12 AM
i am toggling the Gpio in the interrupt handler and probing on CRO .i am not using cube callbacks.or APIs
2020-03-10 05:24 AM
What is CRO?
What event triggers the interrupt?
What is the SPI setup? Is the FIFO enabled?
2020-03-10 05:59 AM
2020-03-10 11:45 PM
Receive packet triggers the interrupt . CRO - oscilloscope. SPI is in master receive only mode .
2020-03-10 11:47 PM
yes