问个简单编程问题

[复制链接]
1419|13
 楼主| milktang 发表于 2017-5-22 13:43 | 显示全部楼层 |阅读模式
本帖最后由 milktang 于 2017-5-22 13:46 编辑

如果每10ms对采样电压做AD转换,怎么判断前后两次AD转换的值大小, 比较了第一次和第二次的后,把第二次的当做第一次,然后和第三次比较吗
tyw 发表于 2017-5-22 14:12 | 显示全部楼层
先确定是留大还是小.假定是大.则把大数存放在大数寄存器,每次转得新数与大数寄存器比较,留下大数存放大数寄存器
 楼主| milktang 发表于 2017-5-22 14:22 | 显示全部楼层
tyw 发表于 2017-5-22 14:12
先确定是留大还是小.假定是大.则把大数存放在大数寄存器,每次转得新数与大数寄存器比较,留下大数存放大数寄 ...

是想确定前后两个数是否有变化,比如前后两个AD差值绝对值超过5,就说明采样值有变化,置位标志位,根据标志位进行下一步处理
宇容创行 发表于 2017-5-22 14:23 | 显示全部楼层
缓存上一次的就行了
tyw 发表于 2017-5-22 14:27 | 显示全部楼层
本帖最后由 tyw 于 2017-5-23 08:30 编辑
milktang 发表于 2017-5-22 14:22
是想确定前后两个数是否有变化,比如前后两个AD差值绝对值超过5,就说明采样值有变化,置位标志位,根据 ...


你要比较相邻2次值是否有变化,就用排队方法,扔掉老的,留下新的,有变化就置位标志.
hanlie2345678 发表于 2017-5-22 15:33 | 显示全部楼层
这个确定前后两个数是否有变化,如前后两个AD差值绝对值超过5,就说明采样值有变化,置位标志位,根据标志位进行下一步的处理。
 楼主| milktang 发表于 2017-5-22 15:38 | 显示全部楼层
hanlie2345678 发表于 2017-5-22 15:33
这个确定前后两个数是否有变化,如前后两个AD差值绝对值超过5,就说明采样值有变化,置位标志位,根据标志 ...

就是想问下程序结构上怎么做
尼古拉斯枭雄 发表于 2017-5-22 15:56 | 显示全部楼层
比较完之后把这次的ad值赋值给上次值的变量
infofans 发表于 2017-5-23 08:25 来自手机 | 显示全部楼层
用冒泡排序的思想
qq553605454 发表于 2017-5-23 10:10 | 显示全部楼层
要进行限幅滤波?
 楼主| milktang 发表于 2017-5-23 11:11 | 显示全部楼层
qq553605454 发表于 2017-5-23 10:10
要进行限幅滤波?

不是,要转换的AD值是一个逆变电路的输出电流采样值,当没接负载和接负载时采样值不一样,接负载时根据负载大小采样值也不一样,想根据不同负载情况增加或减小逆变的输出功率
cjseng 发表于 2017-5-23 13:04 | 显示全部楼层
多保留点采样值,根据趋势判断,不要只比较相邻两次采样值
 楼主| milktang 发表于 2017-5-23 13:33 | 显示全部楼层
cjseng 发表于 2017-5-23 13:04
多保留点采样值,根据趋势判断,不要只比较相邻两次采样值

是说比如测得5次采样值后,AD值是逐步往上升的,就做出相应处理吗
cjseng 发表于 2017-5-23 16:01 | 显示全部楼层
milktang 发表于 2017-5-23 13:33
是说比如测得5次采样值后,AD值是逐步往上升的,就做出相应处理吗

5次采样值,有3次上升就认为上升好了,或者10次采样有5次以上上升就认为上升
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

267

帖子

4

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