This is my environment.
SDK: 15.2
IDE: Segger Embedded Studio
Platform: OSX
SoC: nRF52832
I am trying to transmit more than 8192 data using TWI.
But in fact, it seems that more than 18 bytes of data are not transmitted at a time.
The transfer function is 'nrf_drv_twi_tx'. (clock = 400K)
Here are some logs and codes.
<code>
nrf_drv_twi_tx(&m_twi, address, sendBuf, writeLength + 2, false); // writeLength + 2 = 8210 Bytes.
<result>
app: writing 1 page to 0x4C, size = 8208. TWIM: Transfer type: XFER_TX. TWIM: Transfer buffers length: primary: 18, secondary: 0. TWIM: Primary buffer data: TWIM: 80 04 48 79 D0 D4 7E 25|..Hy..~% TWIM: 4E A1 41 E8 CC D2 6D 50|N.A...mP TWIM: 99 1D |.. TWIM: | TWIM: Function: nrfx_twim_xfer, error code: NRF_SUCCESS. TWIM: TWIM: Event: NRF_TWIM_EVENT_STOPPED. TWIM: Event: EVT_DONE.
Is it related to using 'Easy DMA" and sending large amounts of data?
Is there a difference between nrfx and legacy twi drivers when transferring large amounts of data?
Thank you.