关于A/D采样值 ->送显示平滑处理思想求助?

2020-02-09 11:29发布

我使用的单片机是dspic30f2012 A/D产考基准采样的是MC1403 -> 2.5V 在电力系统中有1.2倍过载也就是X * 1.2 = 2.5v 单片机A/D最高被限定在2V。但单片机采样不了负极性,加1V偏移。12Bit A/D采样满度值就变成了±1638;如果想显示满度值866.0W  有:1638*21655>>12; ≈8659.8 这样处理是因为单片机内部含有16bit乘法器。处理除法要稍慢些。有此系数带来的就是A/D每变化一个字,显示值就变化了5个字!相对误差为0.6‰虽然可以达到技术要求但是5个字的蹦字看着难看!软件滤波方法不用说(采样频率6.4K,采样128点去掉一个最大值一个最小值平均,1s输出5次结果);我的问题来了,有什么样的思想可以稍微牺牲点响应速度,让显示值为一个字蹦字的假象!在输入信号不变的情况下,显示值尾数是±1为变化的范围还是5。要不然我也不会问这样的问题,刚在市场上买了一块表。也是用12位A/D的单片机处理的。回来测试,加上信号源。显示却很平滑。跳字范围也是5个字,但是他是以±1的循环变化。虽然响应速度有所下降,但是这种低价位的表,对于使用者来说没什么。希望处理过的同志给点思想!

前级采样的是时分割乘法器

(原文件名:plx.png)
Proteus仿真

(原文件名:dspic33fj32gp204.png)
Altium PCB

(原文件名:754.png)
硬件已经固定

(原文件名:752.png)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
22条回答
dragonwww
1楼-- · 2020-02-11 13:08
LZ你显示的AltiumDesinger的图片是实时3D显示吗?元件的3D模型是库带的还是自己做的啊?很漂亮啊!我的实时3D显示只有焊盘,没有3D效果呢。尤其是最后一张,怎么调整3快板的横竖放置位置组合到一块啊?希望能跟你学习一下,谢谢!
wangqh1983
2楼-- · 2020-02-11 14:07
 精彩回答 2  元偷偷看……
wangqh1983
3楼-- · 2020-02-11 19:59
回复【19楼】dragonwww
-----------------------------------------------------------------------

当然是实时的3D效果,看光标的手形就能知道;运行起来感觉比导入到SolidWorks里快得多。目前我还不怎么会做,多是下载的模型,有的自己稍作修改;目前正在看SolidWorks的教程。简单的还能应付;要想画的漂亮估计还得摸索一段……。最后一张图是把上面的PCB用Altium另存为step就可以了,之后再分别添加到另一块PCB中查看安装是否合适。我仔细校验过导出来的模型尺寸分毫不差!

(原文件名:2010-8-10 12-58-51.png)


(原文件名:2010-8-10 12-53-38.png)
wangqh1983
4楼-- · 2020-02-11 20:33
回复【16楼】jacky1982512
-----------------------------------------------------------------------

我的跳字是完全正常的。用安捷伦34401A 测AD输入信号电压有<0.6mv的临界值漂移。也就是说±0.2mv左右,debug下AD值也是±1个字。跳动±5.2个字原因是乘的系数与12位AD所决定的!我的目的是让用户看着舒服一些,别一下就跳5个字。让他一个字一个字的跳上去,在一个字一个字的落下来,给人一种温漂的感觉。我认为my2009方法可行!等新做的板子回来马上测试!

一周热门 更多>