用ADC0809從放大電路中取輸入電壓和輸出電壓,計算它們的放大倍數的部分程序:
unsigned char table1[5]={0,0,0,0,0}
c=0;b=0;a=0; // 選擇通道IN0
if(EOC==1)
{
OE=1;
getdata=P0;
OE=0;
I_temp=getdata*125; //I_temp為采樣的輸入電壓
I_temp=I_temp/64;
ST=1;
ST=0;
}
c=0;b=0;a=1; //選擇通道IN1
if(EOC==1)
{
OE=1;
getdata=P0;
OE=0;
O_temp=getdata*125; //O_temp為采樣的輸出電壓
O_temp=O_temp/64;
ST=1;
ST=0;
Av=O_temp/I_temp;
table1[0]=Av/1000; //取千位,存到數組table第一位中;
table1[1]=(Av%1000)/100; //取百位
table1[1]=((Av%1000)%100)/10; //取十位
table1[1]=((Av%1000)%100)%10; //取個位
DisplayOneChar(3,1,table1[0]+0x30);
DisplayOneChar(4,1,table1[1]+0x30);
DisplayOneChar(5,1,table1[2]+0x30);
DisplayOneChar(6,1,table1[3]+0x30);
}
我想問問大家我用proteus仿真的結果是數組的初始值:0000,而不是放大倍數?
歡迎光臨 (http://m.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |