Tackar för ditt svar Micke_s!
Jag satt just och fundera på just det här med DMA och interrupt och hur man kan använda dessa tillsammans med olika enheter.
Insett att jag är tvungen att sätta mig in i allt från grunden, så det är vad jag försöker göra nu.

Så att lära sig allt om interrupt och dma hanteringen i stm32 verkar ju avgörande för att kunna göra något vettigt överhuvud taget.
Läst på det där fina dokumentet som någon tipsade om...
http://www.st.com/mcu/files/mcu/1221142709.pdf
Där kan man läsa följande under 4.2.3 Direct Memory Access ...
"To make this process more efficient, we can enable the circular buffer support so that the ADC data will
continuously write to our buffer. Then, by using the half complete and transfer complete interrupts, we can create
a double buffer. So when the first half of the buffer is full, an interrupt will be generated and we can process this
data while the DMA continues to fill the second half. Once the second half is full, we can process this data while
the DMA starts to refill the buffer from the top. All the other peripherals with DMA support are handled in a similar
way."
Har jag då förstått det hela rätt om jag säger det följande? ...
Så i princip så borde jag kunna skapa en buffer med DMA som matar data till I2C. Och att jag får interrupt när DMA bufferten är halvfull och full. Detta ger mig en dubbelbuffer.
Några frågor som dyker upp är...
Hur vet DMA'n när han ska ge data till I2C? Är detta förinställt i processorn om jag kopplar DMA' till I2S utgången, så man inte behöver tänka på det?
Hur vet man vilken buffer man ska skriva till?
Är det samma DMA interrupt till halvfull och full?
Kan man få DMA buffertern själv, eller måste jag göra om inställningarna varje gång jag får en buffer-full interrupt?