sheva21 发表于 2010-4-20 14:48:51

STC单片机AD转换,如何实现电流的AD转换,求高手指点

如题,新手请问各位牛人,AD转换能直接把电流值转换么,对电流方面理解不是太深,电流是通过放大器然后接在单片机的P1.7口的

AD部分程序如下,不知道对不对,想实现P1.3口德电压测量和P1.7口的电流测量
void AD_set(void)
{
P1M0=0x01;
P1M1=0x01;
ADC_CONTR = ADC_CONTR|0x80;//开AD电源   
delay(2);//延时2ms   
ADC_DATA=0x00;                                  //高8位清零   
ADC_LOW2=0x00;                                  //低2位清零   
ADC_CONTR=0xEB;                                 //启动P1.3通道AD转换 //   
ADC_CONTR|=0x08;                              //启动AD转换   
while ((0x10&ADC_CONTR)!=0x10);   
ADC_CONTR&=0xE7;                              //清零ADC_FLAG标志位   
VM=(ADC_DATA<<2)|(ADC_LOW2&0x03);               //读取电池电压值M,AD转换结果 10位
delay(10);
ADC_DATA=0x00;                                  //高8位清零   
ADC_LOW2=0x00;                                  //低2位清零
ADC_CONTR=0xEF;                                                                //启动P1.7通道AD转换
while ((0x10&ADC_CONTR)!=0x10);   
ADC_CONTR&=0xE7;                              //清零ADC_FLAG标志位   
BIO=(ADC_DATA<<2)|(ADC_LOW2&0x03);               //读取输入电流,AD转换结果 10位   
}

wanyou132 发表于 2010-4-20 15:38:59

先把电流转换成电压 ,再用AD

marshallemon 发表于 2010-4-20 18:32:45

同意楼上,大电流直接用电阻,小电流用OP

oufuqiang 发表于 2010-4-20 19:56:16

再大点电流,又要求隔离,请使用霍尔电流传感器。

sheva21 发表于 2010-4-21 12:56:06

多谢各位指教
页: [1]
查看完整版本: STC单片机AD转换,如何实现电流的AD转换,求高手指点