//************************************************************ // Copyright (c) 深圳市赛元微电子有限公司 // 文件名称 : sc92f8003_adc.h // 作者 : // 模块功能 : ADC固件库函数头文件 // 局部函数列表: // 最后更正日期: 2018/9/4 // 版本 : V1.0 // 说明 : //************************************************************* #ifndef _SC92F8003_ADC_H_ #define _SC92F8003_ADC_H_ #include "sc92f8003.h" typedef enum { ADC_PRESSEL_FHRC_D32 = (uint8_t)0x00, //预分频 fADC = fHRC/32 ADC_PRESSEL_FHRC_D24 = (uint8_t)0x01, //预分频 fADC = fHRC/24 ADC_PRESSEL_FHRC_D16 = (uint8_t)0x02, //预分频 fADC = fHRC/16 ADC_PRESSEL_FHRC_D12 = (uint8_t)0x03, //预分频 fADC = fHRC/12 ADC_PRESSEL_FHRC_D8 = (uint8_t)0x04, //预分频 fADC = fHRC/8 ADC_PRESSEL_FHRC_D6 = (uint8_t)0x05, //预分频 fADC = fHRC/6 ADC_PRESSEL_FHRC_D4 = (uint8_t)0x06, //预分频 fADC = fHRC/4 ADC_PRESSEL_FHRC_D3 = (uint8_t)0x07 //预分频 fADC = fHRC/3 } ADC_PresSel_TypeDef; typedef enum { ADC_Cycle_6Cycle = (uint8_t)0x00, //ADC采样时间为6个ADC采样时钟周期 ADC_Cycle_36Cycle = (uint8_t)0x08 //ADC采样时间为36个ADC采样时钟周期 } ADC_Cycle_TypeDef; typedef enum { ADC_CHANNEL_0 = (uint8_t)0x00, //选择AIN0做AD输入口 ADC_CHANNEL_1 = (uint8_t)0x01, //选择AIN1做AD输入口 ADC_CHANNEL_2 = (uint8_t)0x02, //选择AIN2做AD输入口 ADC_CHANNEL_3 = (uint8_t)0x03, //选择AIN3做AD输入口 ADC_CHANNEL_4 = (uint8_t)0x04, //选择AIN4做AD输入口 ADC_CHANNEL_5 = (uint8_t)0x05, //选择AIN5做AD输入口 ADC_CHANNEL_6 = (uint8_t)0x06, //选择AIN6做AD输入口 ADC_CHANNEL_VDD_D4 = (uint8_t)0x1f //选择内部1/4VDD做AD输入口 } ADC_Channel_TypeDef; void ADC_DeInit(void); void ADC_Init(ADC_PresSel_TypeDef ADC_PrescalerSelection, ADC_Cycle_TypeDef ADC_Cycle); void ADC_ChannelConfig(ADC_Channel_TypeDef ADC_Channel, FunctionalState NewState); void ADC_Cmd(FunctionalState NewState); void ADC_StartConversion(void); uint16_t ADC_GetConversionValue(void); void ADC_ITConfig(FunctionalState NewState, PriorityStatus Priority); FlagStatus ADC_GetFlagStatus(void); void ADC_ClearFlag(void); #endif /******************* (C) COPYRIGHT 2018 SinOne Microelectronics *****END OF FILE****/