[PIC®/AVR®/dsPIC®产品] AD采集误差问题

[复制链接]
3075|13
 楼主| reverse_L0111 发表于 2016-6-27 08:18 | 显示全部楼层 |阅读模式
本帖最后由 reverse_L0111 于 2016-6-27 12:09 编辑

我这里电压采集的误差很大,大概有0.4V,各位大神这种情况回事什么原因呢,谢谢!
所用芯片PIC18F46K80
JY-DX-JY 发表于 2016-6-27 09:22 | 显示全部楼层
软件问题?电压基准多少
mcumail 发表于 2016-6-27 11:58 | 显示全部楼层
说的太笼统了
 楼主| reverse_L0111 发表于 2016-6-27 12:10 | 显示全部楼层
JY-DX-JY 发表于 2016-6-27 09:22
软件问题?电压基准多少

上面 写错了,误差大概有0.4V,参考电压用的是5V。
 楼主| reverse_L0111 发表于 2016-6-27 12:13 | 显示全部楼层

按芯片手册配置寄存器,读取电压,电压值误差大概有0.4V
 楼主| reverse_L0111 发表于 2016-6-27 12:16 | 显示全部楼层
JY-DX-JY 发表于 2016-6-27 09:22
软件问题?电压基准多少

采集电压都是同一个通道采集的,只是通过一个多路复用器来进行切换,一般误差大的话都是什么原因引起的呢
JY-DX-JY 发表于 2016-6-27 14:00 | 显示全部楼层
reverse_L0111 发表于 2016-6-27 12:16
采集电压都是同一个通道采集的,只是通过一个多路复用器来进行切换,一般误差大的话都是什么原因引起的呢 ...

硬件电路,程序
mcumail 发表于 2016-6-28 08:48 | 显示全部楼层
reverse_L0111 发表于 2016-6-27 12:13
按芯片手册配置寄存器,读取电压,电压值误差大概有0.4V

多取几次求个平均试试
 楼主| reverse_L0111 发表于 2016-6-30 08:10 | 显示全部楼层
mcumail 发表于 2016-6-28 08:48
多取几次求个平均试试

就是读了十次,去掉最大两个最小两个后求的平均值
ZG11211 发表于 2016-7-5 21:45 | 显示全部楼层
采集时间是多少?是否在规定的范围内?
e_hailang 发表于 2016-7-6 17:06 | 显示全部楼层
要注意采集时间太短了。
peakerhear 发表于 2016-7-11 01:32 | 显示全部楼层
MCU电源稳定么,给个稳定的电源试试~
通道的测试信号稳定么,给个稳定的测试直流信号试试~

硬件容易犯这两类问题,剩下就是软件问题了,软件配置,软件延时,初始化。。。
lx20150828 发表于 2017-4-18 09:57 | 显示全部楼层
亲,我也碰到这样的问题了。我用的PIC18F45K50,误差也是0.4V,请问你的解决了吗?怎么解决的?
shenzhenherry 发表于 2017-5-24 14:44 | 显示全部楼层
关于AD转换,我是这样解决转换精度的问题:
1、参考点的电压,不用说,通过寄存器选择MCU内部的基准,避免
不必要的麻烦

2、启动AD转换后,
用while语句检测中断的标志位,若标志位没有出现,继续就地循环检测,直到检测到标志位才退出,而不是简单的用延时函数,因为很难知道到底要延时多久才合适。

延时时间取长了,mcu响应缓慢,似乎死机一般;
延时时间取短了,带来转换误差。

3、至少抓取3个数据放在数组里面,然后去掉最先的2个,剩下的数据取平均值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

76

帖子

0

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