CIU32_L051_M307R/Peripheral/CIU32L051_Lib/Include/ciu32l051_std_vrefbuf.h

146 lines
4.2 KiB
C
Raw Normal View History

/************************************************************************************************/
/**
* @file ciu32l051_std_vrefbuf.h
* @author MCU Ecosystem Development Team
* @brief VREFBUF STD<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD>VREFBUF<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>STD<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD>
*
*
**************************************************************************************************
* @attention
* Copyright (c) CEC Huada Electronic Design Co.,Ltd. All rights reserved.
*
**************************************************************************************************
*/
/* <20><><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><C4BC>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD> */
#ifndef CIU32L051_STD_VREFBUF_H
#define CIU32L051_STD_VREFBUF_H
/************************************************************************************************/
/**
* @addtogroup CIU32L051_STD_Driver
* @{
*/
/**
* @defgroup VREFBUF VREFBUF
* @brief <EFBFBD>ο<EFBFBD><EFBFBD><EFBFBD>ѹԴ<EFBFBD><EFBFBD>STD<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @{
*/
/************************************************************************************************/
#ifdef __cplusplus
extern "C" {
#endif
/*------------------------------------------includes--------------------------------------------*/
#include "ciu32l051_std_common.h"
/*-----------------------------------------type define------------------------------------------*/
/************************************************************************************************/
/**
* @defgroup VREFBUF_Constants VRFEBUF Constants
* @brief VREFBUF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @{
*
*/
/************************************************************************************************/
/* VRFEBUF <20><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ѹֵ: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD> */
#define VREFBUF_VOLTAGE_2048 VREFBUF_CSR_VRS_2048 /**< VRFEBUF <20><><EFBFBD><EFBFBD>2.048V */
#define VREFBUF_VOLTAGE_2500 VREFBUF_CSR_VRS_2500 /**< VRFEBUF <20><><EFBFBD><EFBFBD>2.5V */
#define VREFBUF_VOLTAGE_3000 VREFBUF_CSR_VRS_3000 /**< VRFEBUF <20><><EFBFBD><EFBFBD>3.0V */
/* VRFEBUF <20><>ѹУ׼ֵ */
#define VREFBUF_CAL_VALUE_2048 *((uint32_t*)(VREFBUF_CAL_20)) /**< VREFBUFУ׼ֵ<D7BC><D6B5>ַ<EFBFBD><D6B7>2.048V */
#define VREFBUF_CAL_VALUE_2500 *((uint32_t*)(VREFBUF_CAL_25)) /**< VREFBUFУ׼ֵ<D7BC><D6B5>ַ<EFBFBD><D6B7>2.5V */
#define VREFBUF_CAL_VALUE_3000 *((uint32_t*)(VREFBUF_CAL_30)) /**< VREFBUFУ׼ֵ<D7BC><D6B5>ַ<EFBFBD><D6B7>3.0V */
/* VRFEBUF <20><><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ѹֵ<D1B9><D6B5><EFBFBD><EFBFBD>ΪADC<44>ο<EFBFBD><CEBF><EFBFBD>ѹʱ<D1B9><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD> */
#define VREFBUF_VOLTAGE_2048_REF (2048U) /**< VRFEBUF <20><><EFBFBD><EFBFBD>2.048V <20>ο<EFBFBD><CEBF><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>ֵ */
#define VREFBUF_VOLTAGE_2500_REF (2500U) /**< VRFEBUF <20><><EFBFBD><EFBFBD>2.048V <20>ο<EFBFBD><CEBF><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>ֵ */
#define VREFBUF_VOLTAGE_3000_REF (3000U) /**< VRFEBUF <20><><EFBFBD><EFBFBD>2.048V <20>ο<EFBFBD><CEBF><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>ֵ */
/**
* @}
*/
/*------------------------------------------ functions -----------------------------------------*/
/************************************************************************************************/
/**
* @defgroup VREFBUF_Exported_Functions VREFBUF Exported Functions
* @brief VREFBUF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @{
*
*/
/************************************************************************************************/
/**
* @brief VREFBUF ʹ<EFBFBD><EFBFBD>
* @retval <EFBFBD><EFBFBD>
*/
__STATIC_INLINE void std_vrefbuf_enable(void)
{
VREFBUF->CSR |= (VREFBUF_CSR_EN);
}
/**
* @brief VREFBUF <EFBFBD><EFBFBD>ֹ
* @retval <EFBFBD><EFBFBD>
*/
__STATIC_INLINE void std_vrefbuf_disable(void)
{
VREFBUF->CSR &= (~VREFBUF_CSR_EN);
}
/**
* @brief VREFBUF <EFBFBD><EFBFBD>ȡreadyλ״̬
* @retval bool <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>жϽ<EFBFBD><EFBFBD><EFBFBD>
* @arg true<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ʾVREFBUF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>ֵ
* @arg false<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾVREFBUFδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>ȶ<EFBFBD>
*/
__STATIC_INLINE bool std_vrefbuf_get_ready_status(void)
{
return ((VREFBUF->CSR & VREFBUF_CSR_RDY) == (VREFBUF_CSR_RDY));
}
/**
* @brief VREFBUF <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param voltage_scale VREFBUF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹֵ
* @arg VREFBUF_VOLTAGE_2048
* @arg VREFBUF_VOLTAGE_2500
* @arg VREFBUF_VOLTAGE_3000
*/
__STATIC_INLINE void std_vrefbuf_output_config(uint32_t voltage_scale)
{
MODIFY_REG(VREFBUF->CSR, VREFBUF_CSR_VRS, voltage_scale);
}
/**
* @}
*/
/**
* @}
*/
#ifdef __cplusplus
}
#endif
/**
* @}
*/
/**
* @}
*/
#endif /* CIU32L051_STD_VREFBUF_H */