Gast
#7152520
Hallo! Etwas für die STPM32 HAL DMA und SPI Profis. Wir möchten an einem STM32F4xx an EINER SPI (SPI1) zwei externe Bausteine (Display und FLASH) verwenden die wir BEIDE mit DMA ansteuern möchten. Wir verwenden die HAL in aktueller Version. Dazu benötigten wir zwei verschiedene DMA Streams an einer SPI. Die Hardware des STM32 macht das mit (DMA2 Stream1 und Stream3). Die Kommunikation mit EINEM externen Bauteil (Display) über SPI1 und DMA2 funktioniert tadellos. Aber uns ist nicht klar: a) In der HAL SPI-Handle gibt es nur einen DMA-Connector (hspi1.hdmatx). Wenn wir mit zwei verschiedenen DMA-Streams arbeiten wollten müssten wir an diesem Konnektor dynamisch arbitrieren - Einmal den DMA2-Stream1 und dann den DMA2-Stream3. Wir sehen das als sehr aufwendig und fehleranfällig an (neben dem Management der ChipSelect Signale). b) Alternativ: Können wir mit zwei verschiedenen SPI-Handles (hspi1 und hspi2) auf EINER SPI arbeiten in denen wir die beiden Connectoren hspi1.hdmatx und hspi2.hdmatx unterschiedlichen DMA-Streams belegen? rgds