建议你看结果:
dV2 = (double)vOffset * 1.332 - (cVSIGBASE / cgnGain3) ;
dG = (dV1-dV2)/(VREF-dV1) + 1;
dV2只用了1次,有可能优化成
dG = (dV1-(double)vOffset * 1.332 - (cVSIGBASE / cgnGain3) )/(VREF-dV1) + 1;
这样就去掉dV2
我下面的程序,因为为了保持程序统一,用了个结构体,内部的指针后面都没有用 例如&gSDev.num都没有
ADS里编译把结构体都优化掉了,后来查看lst看,后面的函数set_cur(vfLand[0].x,vfLand[0].y);直接用了结构体中的数代替,执行正确
const LcdVal vfLand[24] = {
{19, 0, &gSDev.num},
{17, 16, &gSDev.sm},
......
{0,0,NULL}
};
void show_fj_land(short fj)
{
set_cur(vfLand[0].x,vfLand[0].y);
sPrint(0,"%d",gfDev[fj].num);
set_cur(vfLand[1].x,vfLand[1].y);
sPrint(0,"%d",gfDev[fj].sm);
......
}
|