/**
* @file imp_codec.h
* @author Alvin Young (impressionyang@outlook.com)
* @brief
* @version 0.1
* @date 2025-03-25
*
* _ _
* (_)_ _ ___ _______ ___ ___ (_)__ ___ __ _____ ____ ___ _
* / / ' \/ _ \/ __/ -_|_-<(_- / _ \/ _ \/ // / _ `/ _ \/ _ `/
* /_/_/_/_/ .__/_/ \__/___/___/_/\___/_//_/\_, /\_,_/_//_/\_, /
* /_/ /___/ /___/
* @copyright Copyright (c) 2025 impressionyang
*
* @par 修改日志:
*
* | Date | Version | Author | Description
* |
|---|
| 2025-03-25 | v1.0 | Alvin Young | 首次创建
* |
*
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __IMP_CODEC_H__
#define __IMP_CODEC_H__
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include
/* define --------------------------------------------------------------------*/
#define ESP_CODEC_DEV_OK (0)
#define ESP_CODEC_DEV_DRV_ERR (ESP_FAIL)
#define ESP_CODEC_DEV_INVALID_ARG (ESP_ERR_INVALID_ARG)
#define ESP_CODEC_DEV_NO_MEM (ESP_ERR_NO_MEM)
#define ESP_CODEC_DEV_NOT_SUPPORT (ESP_ERR_NOT_SUPPORTED)
#define ESP_CODEC_DEV_NOT_FOUND (ESP_ERR_NOT_FOUND)
#define ESP_CODEC_DEV_WRONG_STATE (ESP_ERR_INVALID_STATE)
#define ESP_CODEC_DEV_WRITE_FAIL (0x10D)
#define ESP_CODEC_DEV_READ_FAIL (0x10E)
/* typedef -------------------------------------------------------------------*/
typedef enum
{
EM_IMP_CODEC_DEV_WORK_MODE_NONE,
EM_IMP_CODEC_DEV_WORK_MODE_ADC =
(1 << 0), /*!< Enable ADC, only support input */
EM_IMP_CODEC_DEV_WORK_MODE_DAC =
(1 << 1), /*!< Enable DAC, only support output */
EM_IMP_CODEC_DEV_WORK_MODE_BOTH =
(EM_IMP_CODEC_DEV_WORK_MODE_ADC
| EM_IMP_CODEC_DEV_WORK_MODE_DAC), /*!< Support both DAC and ADC */
EM_IMP_CODEC_DEV_WORK_MODE_LINE = (1 << 2), /*!< Line mode */
} codec_work_mode_t;
/* variables -----------------------------------------------------------------*/
/* Private function(only *.c) -----------------------------------------------*/
/* Exported functions --------------------------------------------------------*/
#ifdef __cplusplus
}
#endif
#endif //__IMP_CODEC_H__
/*
* EOF
*/