STM32 F2, DMA und SPI

Gast #2455663
Lesenswert?

Hallo

Ist es grundsätzlich möglich, zwei DMA-Streams auf dieselbe Peripherie 
schreiben zu lassen?

Grundgedanke wäre:

* DMA2_Stream3 mit DMA_Mode_Circular und Prio_Low
* DMA2_Stream5 mit DMA_Mode_Normal und Prio_VeryHigh
* beide bekommen als Memory0BaseAddress "(uint32_t)&(SPI1->DR)"

Sinn des ganzen: niederpriorer dauernder Datenstrom, der immer wieder 
mal von einem hochprioren Transfer verdrängt wird.

Ist soetwas möglich? Erste Tests deuten auf "nein" hin, das heißt, der 
eine Stream alleine funktioniert, der andere alleine auch, nur zusammen 
kommt Mist auf der SPI raus.

Ich denke mir das so, daß der DMA-Arbiter eigentlich für exklusiven 
Zugriff aufs DR sorgt. Ist dem nicht so?
Gast #2455977
Lesenswert?

Tom schrieb:
> Ist soetwas möglich? Erste Tests deuten auf "nein" hin, das heißt, der
> eine Stream alleine funktioniert, der andere alleine auch, nur zusammen
> kommt Mist auf der SPI raus.
Was hattest Du denn erwartet? Und was hängt am SPI dran?

Grüße
Sven

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren