============ ADC控制器 ============ BX2400共有1个ADC转换器,具有6路复用通道和一个battery monitor,可以测量来自6路外模拟电压信号,以及VDD_BAT的电压。 *************** 【基本特性】 *************** ADC控制器的主要特性如下表所示: - 转换精度可以达到8-bit相当。 - 6路ADC数据采集,均为独立的模拟IO口,不占用数字IO口。 - 支持Battory Monitor和Touch。 *************** 【程序操作】 *************** 第一步:配置参数 ============================= 配置参数在app_adc_utils.h头文件中进行参数的配置: 1:将 ADC_GPADC_SINGLE_END_MODE_EN 配置为1 2:将 ADC_GPADC_DIFFERENTIAL_MODE_EN 配置为0 3:如果版本为SDK2.1或更高,则忽略本条目。 如果版本低于SDK2.1,需要配置 ADC_GPADC_RO_TRIM 这个宏。 如果使用的内置FLASH的芯片,需要配置为 ADC_TRIM_SIP_FLASH 。 如果使用的外置FLASH的芯片,需要配置为 ADC_TRIM_EXT_FLASH 。 第二步:初始化ADC ============================== ADC初始化代码为app_adc_util_init()函数。该函数在main函数(裸跑模式下),或者osapp_task函数(FreeRTOS模式下),已经调用完毕,用户无需额外进行调用。 第三步:读取ADC操作。 ============================== 读取ADC通道数据 ---------------------------- 读取函数为 uint32_t app_adc_gpadc_single_end(uint8_t channel) 参数含义:channel即通道号,取值范围0~5,对应P30~P35的模拟IO口。需要注意实际芯片中是否有对应的IO口。 返回值含义:返回值就是电压值,单位为mV。 读取battery monitor数据 ---------------------------- 读取函数为 uint32_t app_adc_battery(void) 返回值含义:返回值就是电压值,单位为uV。