AD转换计算

2019-07-21 02:43发布

下面的程序看得不明白,不知道定义的宏的参数是怎么算出来的,有谁知道,希望能指点下我。
//参考电压3.3V  实际电压 = ADC*参考电压/1024
#define BATT_ADC_3V     495     //495是怎么算出来的??
#define BATT_ADC_3_1V   505     //505是怎么算出来的??
#define BATT_ADC_3_2V   510     //510是怎么算出来的??
#define BATT_ADC_3_3V   517     
#define BATT_ADC_3_4V   520   
#define BATT_ADC_3_5V   537     
#define BATT_ADC_3_6V   560     
#define BATT_ADC_3_7V   580     

void ADC_Init(void)
{
        ADC1->CR1  = 0x00;   // fADC = fMASTER/2,复位即进入低功耗模式,单次转换模式

        ADC1->CR2  = 0x00;   // 默认左对齐,禁止外部触发转换,内部定时器1 TRG事件,禁止扫描模式

        ADC1->CSR  = 0x00;   // AD输入通道 =PB0(AIN0),禁止AWD模拟看门狗中断,禁止转换结束中断,无模拟看门狗事件
}

0条回答

一周热门 更多>