非线性传感器值逆计算
int getadbyval(int min,int max,int step,int bs,int val);
//min:码表最小值
//max: 码表最大值
//step:码表的间距
//bs:二进制字符串的句柄值
//val:计算的val值
//返回:返回AD值,
示例
int bs;
bs=newbin(16);
defbin(bs,0,"00 01 00 02 00 03 00 0A 00 0B 00 10 00 12 00 14");
int pp;
pp=getadbyval(-40,30,10,bs,-35);
echo(pp); //384
注意
- 非线性采样点之间认为是线性的
- 以上纯属样例,非正常测量数据,正常使用是,如需要小数,请表min、max、step等比放大
- 本函数是getvalbyad 的逆函数,请参考。
- 如果超出码表界面,则返回最大值:0x3fffffff