码迷,mamicode.com
首页 > 编程语言 > 详细

线性差值算法

时间:2020-01-07 22:56:47      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:输入   pre   adc   png   span   turn   fine   include   line   

技术图片

 

技术图片

 

 

 点斜式:

技术图片

 

 

 技术图片

 

 

#include<stdio.h>
#define N 10
float w = 10.0;
float w0 = 0.0;
float wn = 100.0;
int adc[N+1] = {86,376,687,1021,1379,1760,2164,2592,3043,3515,4008};
float line(int x)
{
     int i;
     if(x<adc[0]) return(w0);
     if(x>=adc[N]) return(wn);
     for(i=0;i<N;i++) if(x<adc[i+1]) break;
     return (w*i + (w*(x-adc[i])/(adc[i+1]-adc[i])));
}
main()
{
    int x;
    float y;
    while(1){
        printf("\n输入A/D转换结果");
        scanf("%d",&x);
        if(x==0)  break;
        y = line(x);
        printf("\n对应温度为:%2.2f度",y);
    }
}

线性差值算法

标签:输入   pre   adc   png   span   turn   fine   include   line   

原文地址:https://www.cnblogs.com/wy9264/p/12164030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!