Hi,Expert
We are currently using SPI2 to get AD data from TI's ADS131A02 ADC.
As a product specification, the AD data is imported in 8 usec cycles.
In order to run in 8usec cycles, AD data needs to be captured at about 5usec. In reality, however,
it takes more than 20 usec for each acquisition.
However, in reality, it takes more than 20usec for each acquisition.
The test summary and waveform data are as follows.
Questions:
(1) It takes 1.4us from DRDY assertion to DRDY callback.
I don't understand why it takes 1.4us for a simple GPIO interrupt.
Is this 1.4us a reasonable amount of time?
If it is, where does it take that long? (BIOS or peripherals?)
(2) DRDY's Callback sends a request to the task, and then calls the driver's SPI_transfer().
It takes 2.4us from Callback to SPI_transfer(). The time from Callback to SPI_transfer() after dispatch is 2.4us.
This is almost the time for dispatching.
Is this time correct?
(3) Assuming that (2) is a reasonable time,
I want to call SPI_transfer() directly from DRDY's Callback, but I cannot call SPI_transfer() directly from HWI
because I am waiting for semaphore in SPI_transfer().
Is there any way to call it directly?
Best Regards,
Hidekazu