STMicroelectronics' implementation of an I2S driver, also including DMA support.

Dependents:   temp X_NUCLEO_CCA01M1 X_NUCLEO_CCA01M1 X_NUCLEO_CCA02M1

Platform compatibility

This driver has been designed to support a wide range of the Nucleo F4 Family of platforms and MCUs, but not all members of this family support I2S and/or some of the members might require slight modifications to the sources of this driver in order to make it work on those.

This driver has for now been tested only with the following platforms:

Committer:
Wolfgang Betz
Date:
Wed Jul 12 15:24:49 2017 +0200
Revision:
31:bb4bac0874da
Parent:
9:c4c2240e06d6
Merge branch 'master' into betzw_wb

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Wolfgang Betz 1:f90318e0923b 1 #ifndef STM_DMA_API_H
Wolfgang Betz 1:f90318e0923b 2 #define STM_DMA_API_H
Wolfgang Betz 1:f90318e0923b 3
Wolfgang Betz 1:f90318e0923b 4 #include <stdint.h>
Wolfgang Betz 1:f90318e0923b 5
Wolfgang Betz 7:e9105ae127ad 6 #define STM_DMA_ERROR_OUT_OF_CHANNELS (NULL)
Wolfgang Betz 1:f90318e0923b 7
Wolfgang Betz 1:f90318e0923b 8 typedef void* channelid_t;
Wolfgang Betz 1:f90318e0923b 9
Wolfgang Betz 1:f90318e0923b 10 #ifdef __cplusplus
Wolfgang Betz 1:f90318e0923b 11 extern "C" {
Wolfgang Betz 1:f90318e0923b 12 #endif
Wolfgang Betz 1:f90318e0923b 13
Wolfgang Betz 9:c4c2240e06d6 14 void stm_dma_init(void);
Wolfgang Betz 1:f90318e0923b 15
Wolfgang Betz 9:c4c2240e06d6 16 channelid_t stm_dma_channel_allocate(uint32_t capabilities);
Wolfgang Betz 1:f90318e0923b 17
Wolfgang Betz 9:c4c2240e06d6 18 void stm_dma_channel_free(channelid_t channelid);
Wolfgang Betz 1:f90318e0923b 19
Wolfgang Betz 1:f90318e0923b 20 #ifdef __cplusplus
Wolfgang Betz 1:f90318e0923b 21 }
Wolfgang Betz 1:f90318e0923b 22 #endif
Wolfgang Betz 1:f90318e0923b 23
Wolfgang Betz 1:f90318e0923b 24 #endif
Wolfgang Betz 1:f90318e0923b 25
Wolfgang Betz 1:f90318e0923b 26 /** @}*/