Hello, I'm an developer using nrf51822.
I have the same problem with this. devzone.nordicsemi.com/.../ But this problem has no more discussion...
Here is my problem. We use a 3rd party analog front end (AFE) as SPI master. (SPI speed: 1.2Mbps/650Kbps) This AFE sampling rate is 8192 Hz (8192 interrupt in one second...?) Each sampling point has 2 bytes. We want to send all data through BTLE to mobile. (Connection interval: 7.5ms)
In our experience, if we disable BTLE and only count the number of interrupt in one sec. The counter shows 8192~8195. It seems nrf51822 can receive all interrupt (point) from AFE. But when enable BTLE and start transmitting AFE sampling point (20 byte per packet) The counter drops about to 4900.
I guess this is because the priority in BTLE is higher than SPI interrupt. I found there is an EasyDMA mechanism in SPIS, but I think EasyDMA will not decrease the number of 8192 interupt if the sampling data is not consecutive in one "granted".
Hung Bui says there is an "DMA controller" will have no data loss if the SPI slave speed is 2Mbps Is that correct? Or any development tips for my situation? Thanks.