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

nRF52 direct access to EasyDMA

Hello,

Is it possible to use EasyDMA directly with nRF52 SDK without using one of the higher level libraries that use it, i.e SPI / UART? I am interested in implementing something similar to Octows2811.

I also looked at the PWM module for this but it seems like it has a max frequency of 200 kHz which is too slow for what I am trying to do.

Thanks!

  • Yes you can have from-memory waveforms, you can even change the top counter limit to change the frequency as you go although you wouldn't need to. That documentation is very dense however and since the preview chip didn't have PWM working, I've not looked at it in detail. 5us is quite long isn't it, that's 320 clock cycles, or 80 16MHz cycles if you're thinking in terms of that peripheral clock. I'd have though easyDMA would be able to load and update the registers faster than that. You want 1.25us however and that really is quite short.

    If I had a chip with working PWM, I'd be tempted to try it and see how fast I could make it go reliably.

  • No the PWM LIBRARY which you reference has nothing to do with the PWM PERIPHERAL on the nRF52. The library uses timers and PPIs, the peripheral is a standalone hardware peripheral. That's why I couldn't find the limitation in the manual, there isn't one listed. There's a few vague mentions of PWM minimum period but it's not specified. I think it may be quite possible to run at the speed you like and generate the kind of waveform you're looking for ... IF the PWM peripheral works on whatever version of the chip you have.

  • Ah, that makes sense. Now I'm looking at the correct docs and I see "Decoder with EasyDMA" which is exactly what I need! infocenter.nordicsemi.com/.../Chunk1670748135.html

Related