This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF52832: Pulse width measurement(input capture function)

Hi,

I need to measure all width of continuous pulses without stopping the measurement.
The pulse frequency is about 10kHz. But the frequency and the duty ratio changes dynamically.

<My past success example>
In the past, I have experienced measuring SPI input value from the external sensor without stopping in nRF52832.
In that case, I've used PPI, timer, SPIM, EasyDMA, and two memory banks.
The two memory banks were switched in timer interrupt rutine when some data was stored.
And in the timer interrupt rutine, data copy and the analyze were also processed.

<My idea>
If the nRF 52832 timer can correlate with EasyDMA when capturing GPIOTE edge timing, non-stop pulse width measurement can be realized in the same way as above.
So could you please answer the following questions ?

Q1.
Is the timer capture function with GPIOTE edge event correlate with EasyDMA ?
This means that can EasyDMA store the timer caputured value to RAM, automatically?
I guess it's impossible.

Q2.
Is there another solution solves my above requreiment in nRF52832 ?
I guess SAADC is only the solution.
However, it is necessary to estimate the timing of the edge by measuring with the ADC at 10 μs period, and the time accuracy deteriorates.

Best Regards,
Yasuhiro Senoo

Parents Reply Children
No Data
Related