原创
N76E003 使用bandgap测量供电电压
N76E003 可以使用单节锂电池直接供电。不需要使用任何AD通道,利用内部集成的带隙参考源可以测量供电电压
带隙参考源 bandgap 标称电压为 1.22V,ADC的参考源为单片机供电电压,当供电电压变化时,测得的Bandgap电压值会不一样。
可以使用公式: 供电电压 = 1.22*4095/Bandgap采样值 求出供电电压。
下面的代码是启动Bandgap 进行AD转换,最后获得小数点后两位的电压值。
Enable_ADC_BandGap;</span>
clr_ADCF; set_ADCS; // Each time ADC start trig signal while(ADCF == 0); i = 0; tempstr[i++]='V';tempstr[i++]='a';tempstr[i++]='l';tempstr[i++]=':'; // 供电电压 = 1.22*4095/Bandgap采样值 temp = ADCRH; temp <<= 4; temp += (ADCRL & 0x0F); // 取得带隙采样值 temp1 = 49959 % temp; // 取得余数 temp1 *= 10; temp1 = temp1 / temp; // 得到小数位 temp = 49959 / temp; //扩大10倍 12.2*4095 Bandgap BatVolt = temp; // 保存电池电压 tempstr[i++]= '0' + temp / 10; temp %= 10; tempstr[i++]= '.'; tempstr[i++]= '0' + temp; tempstr[i++]= '0' + temp1; tempstr[i++]= 'V'; tempstr[i++]= '\r';tempstr[i++]= '\n';tempstr[i++]= '\0'; Send_Str_To_UART0(tempstr,i);复制代码
作者: southcreek, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-408807.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
yzw92 2021-1-22 06:23
curton 2021-1-21 18:22
欢迎点击
论坛> >机器人/工业电子> >工业电子与自动化
https://mbb.eet-china.com/forum/topic/85437_1_1.html