用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,而不是放大倍數?
|