这里有单片机编程方面的高手吗?

我目前正在做一个“电动车蓄电池剩余电量显示”的项目,主要是通过AD转换测量蓄电池的剩余电压,然后通过单片机外接的四个LED指示电池的剩余电量,如果只是测量空载时候的电压就很简单,但是电动车在行驶的时候电压是不一样的,如刚开始启动加速的时候电压变化就很大,等到匀速的时候电压就会回去一点,比空载的时候少一些。现在就出现电动车在行驶的时候指示灯变化很大,我想通过软件滤波的方法实现这个项目,但是没有思路,望大侠指教。谢谢!

教你一个均值滤波的方法。
比如说做一个10级的缓冲,就是一个数组 buff[10], AD每采一个数,就把原来数组里的数放到它的后一位,buff[9]丢掉,而刚采的数存入buff[0]。输出就是这10个数的平均值,这样就起到的滤波的作用。
这种算法很简单实用,所以经常在单片机中使用。这个缓冲的大小是可以设定的,要自己权衡,设置小了,系统延时小,得滤波效果差,设置大了,滤波效果好,但系统延时会增大。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-11-13
很简单啊
设几个缓冲变量,等连续k次检测的值都改变为同一值时输出才变化
和防抖思想差不多吧
第2个回答  2008-11-13
这要配合控制器做才行。
相似回答