如何实现统计出AD采集一分钟内的最大值最小值

[复制链接]
5712|18
 楼主| shiba1986 发表于 2013-5-18 16:17 | 显示全部楼层 |阅读模式
如何实现统计出AD采集一分钟内的最大值最小值,采集的湿度信号, 要求时间精确为1分钟。用的是51单片机,采集用的是7109
huangxz 发表于 2013-5-18 16:28 | 显示全部楼层
是滑动的方式,还是周期的方式,
两种方式差异很大
 楼主| shiba1986 发表于 2013-5-18 16:42 | 显示全部楼层
huangxz 发表于 2013-5-18 16:28
是滑动的方式,还是周期的方式,
两种方式差异很大

都讲下怎么处理的吧
 楼主| shiba1986 发表于 2013-5-18 16:45 | 显示全部楼层
huangxz 发表于 2013-5-18 16:28
是滑动的方式,还是周期的方式,
两种方式差异很大

我现在用的数组把数先存起来
但是数组不能定义太大 定义太大 就data空间不足
huangxz 发表于 2013-5-18 16:56 | 显示全部楼层
shiba1986 发表于 2013-5-18 16:42
都讲下怎么处理的吧

如果是滑动处理要定义一个先进先出的队列
如果是周期处理就在一个周期里面判断和替换就够了。
lyjian 发表于 2013-5-18 19:59 | 显示全部楼层
简单
每采集一次数据和原来的数据比较一下就可以了
dirtwillfly 发表于 2013-5-18 21:51 | 显示全部楼层
7109好像每秒最多采样30次,一分钟才1800。每次采样直接和比较就行,计算量也不算大。
teddeng 发表于 2013-5-18 23:23 | 显示全部楼层
定周期的就存2个数够了,进来一个数跟原来2个比较下,保留最大最小,如此继续1分钟,结果就是这2个数。。
滑动的就得保留1分钟窗口所有的数据了。
wuzx-61 发表于 2013-5-18 23:45 | 显示全部楼层
学习了.
 楼主| shiba1986 发表于 2013-5-19 18:48 | 显示全部楼层
dirtwillfly 发表于 2013-5-18 21:51
7109好像每秒最多采样30次,一分钟才1800。每次采样直接和比较就行,计算量也不算大。 ...

但是这样的话 不一定是我想要的那一分钟内的最大值和最小值啊
 楼主| shiba1986 发表于 2013-5-19 18:48 | 显示全部楼层
huangxz 发表于 2013-5-18 16:56
如果是滑动处理要定义一个先进先出的队列
如果是周期处理就在一个周期里面判断和替换就够了。 ...

请问这个先进先出的队列 用51c是如何定义的
dirtwillfly 发表于 2013-5-20 08:38 | 显示全部楼层
shiba1986 发表于 2013-5-19 18:48
但是这样的话 不一定是我想要的那一分钟内的最大值和最小值啊

你想要哪一分钟,就计算那一分钟的就好啊
yuanquan12345 发表于 2013-5-20 11:02 | 显示全部楼层
学习。
faspsfa 发表于 2018-1-15 15:07 | 显示全部楼层
请问您是怎么解决的呢,我现在也遇到了同样的问题,望指教,谢谢
山东电子小菜鸟 发表于 2018-1-17 12:14 | 显示全部楼层
两个变量max,min即可,每来一个数data_new,与max,min比较;if data_new>max  max=data_new  if data_new<min min=data_new
山东电子小菜鸟 发表于 2018-1-17 12:14 | 显示全部楼层
faspsfa 发表于 2018-1-15 15:07
请问您是怎么解决的呢,我现在也遇到了同样的问题,望指教,谢谢


两个变量max,min即可,每来一个数data_new,与max,min比较;if data_new>max  max=data_new  if data_new<min min=data_new
faspsfa 发表于 2018-1-19 16:41 | 显示全部楼层
山东电子小菜鸟 发表于 2018-1-17 12:14
两个变量max,min即可,每来一个数data_new,与max,min比较;if data_new>max  max=data_new  if data_n ...

这个不能跟随一段周期时间来更新,随着时间的推移,只能测出从一开始测量到现在的最大最小值,如果从5分钟前测量,就算出了5分钟内的最大最小值,而不是4分钟到5分钟这1分钟之内的最值,所以,这个最值要如何跟随周期实时更新呢
霜之哀息 发表于 2018-1-19 21:19 | 显示全部楼层
设置两个变量,先储存前两个数值,后面的每一个数值与这两个数值比较,是最大值或者最小值就替换保存
zqx1000 发表于 2018-4-10 19:29 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

24

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部