Half-Duplex burst mode DMAR
Posted: Sat Oct 24, 2020 5:32 pm
Hi There,
I am trying to write a driver that uses burst mode DMAR in half duplex mode - so the MCU steps up DMA using DMAR, sends a bunch of data, waits a little and then does the reverse to read the response over DMA from the peripheral (timer).
The documentation on burst mode is extremely thin, and its difficult to understand what the right sequence is - or if this is even possible.
Outbound is working fine, its the incoming response that I am having trouble with. The STM32 documentation indicates that inbound should be exactly the same setup as outbound with the exception of using STM32_DMA_CR_DIR_P2M instead of STM32_DMA_CR_DIR_M2P but I get no data.
Is there anything I should be aware of with trying this setp? Are there any good code samples / documentation of something similar?
In particular I don't understand how the timer clock frequency relates to the pulses being read (hopefully) using burst mode.
Any help greatly appreciated!
I am trying to write a driver that uses burst mode DMAR in half duplex mode - so the MCU steps up DMA using DMAR, sends a bunch of data, waits a little and then does the reverse to read the response over DMA from the peripheral (timer).
The documentation on burst mode is extremely thin, and its difficult to understand what the right sequence is - or if this is even possible.
Outbound is working fine, its the incoming response that I am having trouble with. The STM32 documentation indicates that inbound should be exactly the same setup as outbound with the exception of using STM32_DMA_CR_DIR_P2M instead of STM32_DMA_CR_DIR_M2P but I get no data.
Is there anything I should be aware of with trying this setp? Are there any good code samples / documentation of something similar?
In particular I don't understand how the timer clock frequency relates to the pulses being read (hopefully) using burst mode.
Any help greatly appreciated!