你想多了!
第一:你要测量的电源与单片机共地。
第二:设置好AD转换通道,设置寄存器如图所示:
其它设置,去看手册。STC15的手册可以从STC官网下载
http://www.stcmcu.com/,手册中还有例子。
第三:开启AD转换,单片机会自动从你设置的AD转换口,读取数据进行转换。
例如我的一个小程序(部分)
void ADCInit (void)//ADC设置
{
P1ASF=0x03;//P10、P11为ADC输入口。手册P878
CLK_DIV=0x20;//ADC转换结果存放方式。手册P880
}
void ADC0 (void)//第一路AD转换函数
{
ADC_CONTR=0xe8;//开ADC电源、速度最快、开始转换、P10口。手册P879
while (!(ADC_CONTR&0x10));//如果转换没结束,则等待
ADC_CONTR=0x00;//关ADC电源、清转换完毕标志
ADCdate=ADC_RES;//ADC转换数据高两位。手册P880
ADCdate=(ADCdate<<8);
ADCdate=(ADCdate|ADC_RESL);//合并10位转换数据
ADCXX();
}
我测过一节、两节干电池的电压。
注意:我不是高手,这样做可能从电路来说是很粗暴的——仅仅是做了程序方面的试验。
欢迎指正。