6201|7

9

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

NTC测温度有1到2度的跳动,大神们帮看看这样取均值有没有问题? [复制链接]

采用的是STC12C5A60S2单片机,用的是进中断采集AD,在串口上的温度总是不稳定,然后采用多取几个温度求均值,但是还是有1到2度的跳动,大神们看看这样取均值有没有什么错误。
  1. void main()
  2. {
  3.         unsigned char i,j,Te;
  4.         int T[30],sum=0;
  5.         InitUart();
  6.         InitADC();
  7.         IE=0xa0;
  8.         while(1)
  9.         {
  10.                 Delay(10);
  11.                 Rt=2*ADC_RES/(256-ADC_RES);
  12. //                SendData(ch);
  13.                 for(i=0;i<131;i++)
  14.                 {
  15.                         if(Rt<RtData[i]&&Rt>RtData[i+1])
  16.                         {
  17.                                 T[j]=temp[i];
  18.                                 j++;
  19.                         }       
  20.                 }
  21. //                        SendData(j);
  22.                 //        SendData(T[j-1]);
  23.                 sum=sum+T[j-1];
  24.         //        SendData(sum);
  25.                 if(j==30)
  26.                 {
  27.                         SendData(sum);
  28.                         j=0;
  29.                         Te=sum/30;
  30.                         sum=0;
  31.                         Msb= Te/10;
  32.                         Lsb= Te%10;
  33.                         Msb<<=4;
  34.                         Msb|=Lsb;
  35.                         SendData(Te);
  36.                         SendData(Msb);        //bin_bcd
  37.                         SendData(Rt);
  38.                         SendData(ADC_RES);
  39.         }  
  40. void adc_isr() interrupt 5 using 1
  41. {
  42.         ADC_CONTR&=!ADC_FLAG;         //clear ADC interrupt flag
  43.         ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ADC_START|ch;
  44. }
复制代码
此帖出自传感器论坛

最新回复

滞后滤波 建议找一下硬件问题  详情 回复 发表于 2014-9-18 10:18
点赞 关注
 
 

回复
举报

1万

帖子

25

TA的资源

版主

推荐
 
NTC虽然精度不是很高,但它的稳定性还是非常好的。可能需要在电源、基准等上多看看。
此帖出自传感器论坛

点评

谢谢了,硬件上没有什么问题。我求的均值是查询得到的温度,因为精度本来就不高,所以得到的温度再求均值得到的值误差就更大,所以先求采集到的AD值的均值,之后再查表,这样得出的温度还是很稳定的!  详情 回复 发表于 2014-9-20 11:12
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
看看是硬件采样是否有大波动,
此帖出自传感器论坛

点评

采集到的ad值是有波动的!并联了电容了颗104电容也是!我的那个求均值那段代码逻辑上有没有问题?  详情 回复 发表于 2014-9-18 00:39
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
elvike 发表于 2014-9-18 00:28
看看是硬件采样是否有大波动,

采集到的ad值是有波动的!并联了电容了颗104电容也是!我的那个求均值那段代码逻辑上有没有问题?
此帖出自传感器论坛
 
 
 

回复

674

帖子

5

TA的资源

纯净的硅(初级)

4
 
NTC的精度本来就不好,不过数值挑动就是它的不对了
此帖出自传感器论坛
 
 
 

回复

34

帖子

0

TA的资源

一粒金砂(中级)

5
 
每个人有自己的编写方式,好歹加一下注释嘛  这样让人看了很累,没信心看下去。。
1.建议你检测下电源电压波动范围,基准电压波动范围,如果太大要加滤波,这是硬伤
2.两次AD过程需要一定的延时。
3.你应该是采样30次温度求平均值得,这样还不够的话可以去掉1-2个最大值和最小值再求平均
此帖出自传感器论坛
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(高级)

7
 
滞后滤波
建议找一下硬件问题
此帖出自传感器论坛
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

8
 
dcexpert 发表于 2014-9-18 09:43
NTC虽然精度不是很高,但它的稳定性还是非常好的。可能需要在电源、基准等上多看看。

谢谢了,硬件上没有什么问题。我求的均值是查询得到的温度,因为精度本来就不高,所以得到的温度再求均值得到的值误差就更大,所以先求采集到的AD值的均值,之后再查表,这样得出的温度还是很稳定的!
此帖出自传感器论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表