标题: 能不能解释下电阻值计算函数中单片机程序的意思? [打印本页]

作者: 荒芜    时间: 2018-4-15 18:57
标题: 能不能解释下电阻值计算函数中单片机程序的意思?
单片机源程序如下:
  1. 中值滤波函数
  2. *********************/
  3. uint median(uint *dat,uchar num_d)  
  4. {
  5. uchar i,j;
  6. uint temp;
  7. for (i=0;i<num_d;i++)
  8.         for (j=0;j<num_d-i;j++)
  9.         {
  10.                 if (dat[i]>dat[i+1])
  11.                 {
  12.                         temp=dat[i];
  13.                         dat[i]=dat[i+1];
  14.                         dat[i+1]=temp;
  15.                 }
  16.         }
  17. return(dat[(num_d-1)/2]);
  18. }
  19. /*******************电阻值计算函数*********************/
  20. float account_res(void)
  21. {        uint temp;
  22.         float temp_r,d;

  23.         temp=median(tem,11);         
  24.         d = temp*500.0/4096;
  25.         temp_r=d*3173/4096;
  26.         return(temp_r);
  27. }

  28. /****************计算温度函数*************************/
  29. float temperature(void)
  30. { float temp1,T_out;
  31.   uchar temp2;

  32. temp1=account_res(); /
  33. temp2=(uint)temp1; //
  34. if(temp2<100){ng=1;}else{ng=0;}

复制代码




作者: 青青之歌    时间: 2018-4-15 22:58
我就按照程序强行理解,中值滤波函数的意思:先从大到小排列11位的大小,取中间值(因为从0开始所以是减1);电阻计算函数:根据相应的阻值折算对应相应的浮点型数字;计算温度函数:将浮点型转化为整型,当温度值小于100,则ng通过,如果大于或等于100,则ng不通过
作者: 海角七号550    时间: 2018-4-16 10:02
电阻值计算函数中,4096说明是12位ADC,500.0是参考电压,后面是换算的等式
作者: 荒芜    时间: 2018-4-17 09:08
海角七号550 发表于 2018-4-16 10:02
电阻值计算函数中,4096说明是12位ADC,500.0是参考电压,后面是换算的等式

500.0是参考电压??500V的参考电压还是啥?
作者: 荒芜    时间: 2018-4-17 09:09
青青之歌 发表于 2018-4-15 22:58
我就按照程序强行理解,中值滤波函数的意思:先从大到小排列11位的大小,取中间值(因为从0开始所以是减1) ...

电阻值计算函数中return算出的值是account-res的值吗?
作者: 荒芜    时间: 2018-4-19 08:53
海角七号550 发表于 2018-4-16 10:02
电阻值计算函数中,4096说明是12位ADC,500.0是参考电压,后面是换算的等式

参考电压不应该是5V吗?那个公式中的3173又是什么鬼??急需答复   感谢
作者: 荒芜    时间: 2018-4-19 08:54
荒芜 发表于 2018-4-17 09:08
500.0是参考电压??500V的参考电压还是啥?

参考电压不应该是5V吗?还有下面那个3173是什么意思、?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1