Part Number: MSP432P401R
I have read the manual and I have seen that DMA doesn't work in LP3/4 but still, I need to ask a few questions.
I have my MSP432 connected over EUSCIB0 to the chip CC1200 which has a FIFO for receiving bytes.
You can read from the FIFO by lowering chip select and then sending a command which instructs the CC1200 to burst read from the FIFO. After the transfer has finished, I pull the chip select up.
Now, I need to do all these activities as reactions to certain interrupts. When I need to read from the CC1200 I get a GPIO interrupt which prepares and starts the DMA, which then reads from the CC1200 and at the end I get an interrupt when the transfer has finished.
Everything was good till I entered low power mode 3 or 4. In active mode and low power mode 0 everything works fine, but in low power mode 3 and 4 a strange thing happens.
For example, I send this packet "12345". When I use LP0 I receive everything ok, but in LP3 and LP4 I receive "22345".
No matter how big the packet is or what data I send, the second byte sent is always replicated on the first and second place. It's always the same problem.
Now after so much explanation I need to ask, why does my DMA even work in LP3 and LP4 when it states in the manual that peripherals don't work in these modes?
Why does my DMA interrupt wake the MCU up when it states in the manual that it shouldn't be possible?
Do I not understand the manual or is the functioning of the DMA not defined in these modes and that is why it states that it doesn't work in these modes?