STM32L443xx HAL User Manual
|
00001 /** 00002 ****************************************************************************** 00003 * @file stm32l4xx_hal_sai_ex.h 00004 * @author MCD Application Team 00005 * @brief Header file of SAI HAL extended module. 00006 ****************************************************************************** 00007 * @attention 00008 * 00009 * Copyright (c) 2017 STMicroelectronics. 00010 * All rights reserved. 00011 * 00012 * This software is licensed under terms that can be found in the LICENSE file 00013 * in the root directory of this software component. 00014 * If no LICENSE file comes with this software, it is provided AS-IS. 00015 * 00016 ****************************************************************************** 00017 */ 00018 00019 /* Define to prevent recursive inclusion -------------------------------------*/ 00020 #ifndef STM32L4xx_HAL_SAI_EX_H 00021 #define STM32L4xx_HAL_SAI_EX_H 00022 00023 #ifdef __cplusplus 00024 extern "C" { 00025 #endif 00026 00027 #if defined(STM32L4R5xx) || defined(STM32L4R7xx) || defined(STM32L4R9xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx) || \ 00028 defined(STM32L4P5xx) || defined(STM32L4Q5xx) 00029 00030 /* Includes ------------------------------------------------------------------*/ 00031 #include "stm32l4xx_hal_def.h" 00032 00033 /** @addtogroup STM32L4xx_HAL_Driver 00034 * @{ 00035 */ 00036 00037 /** @addtogroup SAIEx 00038 * @{ 00039 */ 00040 00041 /* Exported types ------------------------------------------------------------*/ 00042 /** @defgroup SAIEx_Exported_Types SAIEx Exported Types 00043 * @{ 00044 */ 00045 00046 /** 00047 * @brief PDM microphone delay structure definition 00048 */ 00049 typedef struct 00050 { 00051 uint32_t MicPair; /*!< Specifies which pair of microphones is selected. 00052 This parameter must be a number between Min_Data = 1 and Max_Data = 3. */ 00053 00054 uint32_t LeftDelay; /*!< Specifies the delay in PDM clock unit to apply on left microphone. 00055 This parameter must be a number between Min_Data = 0 and Max_Data = 7. */ 00056 00057 uint32_t RightDelay; /*!< Specifies the delay in PDM clock unit to apply on right microphone. 00058 This parameter must be a number between Min_Data = 0 and Max_Data = 7. */ 00059 } SAIEx_PdmMicDelayParamTypeDef; 00060 00061 /** 00062 * @} 00063 */ 00064 00065 /* Exported constants --------------------------------------------------------*/ 00066 /* Exported macros -----------------------------------------------------------*/ 00067 /* Exported functions --------------------------------------------------------*/ 00068 /** @addtogroup SAIEx_Exported_Functions SAIEx Extended Exported Functions 00069 * @{ 00070 */ 00071 00072 /** @addtogroup SAIEx_Exported_Functions_Group1 Peripheral Control functions 00073 * @{ 00074 */ 00075 HAL_StatusTypeDef HAL_SAIEx_ConfigPdmMicDelay(SAI_HandleTypeDef *hsai, SAIEx_PdmMicDelayParamTypeDef *pdmMicDelay); 00076 /** 00077 * @} 00078 */ 00079 00080 /** 00081 * @} 00082 */ 00083 00084 /* Private macros ------------------------------------------------------------*/ 00085 /** @addtogroup SAIEx_Private_Macros SAIEx Extended Private Macros 00086 * @{ 00087 */ 00088 #define IS_SAI_PDM_MIC_DELAY(VALUE) ((VALUE) <= 7U) 00089 /** 00090 * @} 00091 */ 00092 00093 /** 00094 * @} 00095 */ 00096 00097 /** 00098 * @} 00099 */ 00100 00101 #endif /* STM32L4R5xx || STM32L4R7xx || STM32L4R9xx || STM32L4S5xx || STM32L4S7xx || STM32L4S9xx || */ 00102 /* STM32L4P5xx || STM32L4Q5xx */ 00103 00104 #ifdef __cplusplus 00105 } 00106 #endif 00107 00108 #endif /* STM32L4xx_HAL_SAI_EX_H */ 00109