stm32f4/09-PlaySound/i2s_bits.h
Emmanuel BENOîT 017631b168 Added (non-functional) CS43L22 code
I just can't figure out what's wrong with it.
2012-11-13 18:39:13 +01:00

62 lines
2.8 KiB
C

#ifndef __H_STM32F4_I2S
#define __H_STM32F4_I2S
/* I2S configuration */
#define STM32F4_I2S_OFFS_CFG 0x0000001c
/* I2S configuration - SPI mode */
#define STM32F4_I2S_CFG_MODE_SPI ((uint16_t)0x0000)
/* I2S configuration - I2S mode */
#define STM32F4_I2S_CFG_MODE_I2S ((uint16_t)0x0800)
/* I2S configuration - Peripheral enabled */
#define STM32F4_I2S_CFG_ENABLED ((uint16_t)0x0400)
/* I2S configuration - Peripheral disabled */
#define STM32F4_I2S_CFG_DISABLED ((uint16_t)0x0000)
/* I2S configuration - I2S configuration mode - Master/transmit */
#define STM32F4_I2S_CFG_CFG_MS_TX ((uint16_t)0x0200)
/* I2S configuration - I2S configuration mode - Slave/transmit */
#define STM32F4_I2S_CFG_CFG_SL_TX ((uint16_t)0x0000)
/* I2S configuration - I2S configuration mode - Slave/receive */
#define STM32F4_I2S_CFG_CFG_SL_RX ((uint16_t)0x0100)
/* I2S configuration - I2S configuration mode - Master/receive */
#define STM32F4_I2S_CFG_CFG_MS_RX ((uint16_t)0x0300)
/* I2S configuration - PCM frame sync - Long frame */
#define STM32F4_I2S_CFG_PCMSYNC_LONG ((uint16_t)0x0080)
/* I2S configuration - PCM frame sync - Short frame */
#define STM32F4_I2S_CFG_PCMSYNC_SHORT ((uint16_t)0x0000)
/* I2S configuration - I2S standard - Right justified */
#define STM32F4_I2S_CFG_STD_LSB ((uint16_t)0x0020)
/* I2S configuration - I2S standard - I2S Philips standard */
#define STM32F4_I2S_CFG_STD_I2S ((uint16_t)0x0000)
/* I2S configuration - I2S standard - Left justified */
#define STM32F4_I2S_CFG_STD_MSB ((uint16_t)0x0010)
/* I2S configuration - I2S standard - PCM standard */
#define STM32F4_I2S_CFG_STD_PCM ((uint16_t)0x0030)
/* I2S configuration - Reverse clock polarity - ON */
#define STM32F4_I2S_CFG_RCPOL_ON ((uint16_t)0x0008)
/* I2S configuration - Reverse clock polarity - OFF */
#define STM32F4_I2S_CFG_RCPOL_OFF ((uint16_t)0x0000)
/* I2S configuration - Data length - 32-bit */
#define STM32F4_I2S_CFG_DLEN_32 ((uint16_t)0x0004)
/* I2S configuration - Data length - 16-bit */
#define STM32F4_I2S_CFG_DLEN_16 ((uint16_t)0x0000)
/* I2S configuration - Data length - 24-bit */
#define STM32F4_I2S_CFG_DLEN_24 ((uint16_t)0x0002)
/* I2S configuration - Channel length - 32-bit */
#define STM32F4_I2S_CFG_CLEN_32 ((uint16_t)0x0001)
/* I2S configuration - Channel length - 16-bit */
#define STM32F4_I2S_CFG_CLEN_16 ((uint16_t)0x0000)
/* I2S prescaler */
#define STM32F4_I2S_OFFS_PR 0x00000020
/* I2S prescaler - Master clock output - ON */
#define STM32F4_I2S_PR_MCLK_ON ((uint16_t)0x0200)
/* I2S prescaler - Master clock output - OFF */
#define STM32F4_I2S_PR_MCLK_OFF ((uint16_t)0x0000)
/* I2S prescaler - Odd factor - Divider is I2SDIV * 2 */
#define STM32F4_I2S_PR_EVEN ((uint16_t)0x0000)
/* I2S prescaler - Odd factor - Divider is 1 + I2SDIV * 2 */
#define STM32F4_I2S_PR_ODD ((uint16_t)0x0100)
/* I2S prescaler - Divider - Mask */
#define STM32F4_I2S_PR_DIV_MASK ((uint16_t)0x00ff)
#endif //__H_STM32F4_I2S