采ADC值的建议

2019-07-21 17:48发布

本帖最后由 火山LF 于 2016-8-26 19:59 编辑

采ADC值的建议

1、适当延长ADC的sampling和hold的时间
2、在采ADC时,要用万用表同时检测三个地方的电压,参考电压、IO口电压、外部电压提供源电压
3、一定要滤波,在计算sum/count的时候,要注意sum的值不要溢出


ADC有查询和中断的方式,当一起使用的时候,程序会一直停在查询的while处下不去
1、查询
                while (!(HWREG8(ADC12_B_BASE + OFS_ADC12IFGR0) & ADC12IFG0));

2、中断方式
    ADC12_B_clearInterrupt(ADC12_B_BASE,
                           0,
                           ADC12_B_IFG0
                           );

    //Enable memory buffer 0 interrupt
    ADC12_B_enableInterrupt(ADC12_B_BASE,
                            ADC12_B_IE0,
                            0,
                            0);

注意两者不能同时使用。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
dirtwillfly
1楼-- · 2019-07-21 18:57
感谢分享
火山LF
2楼-- · 2019-07-21 20:36
dirtwillfly 发表于 2016-8-24 11:15
感谢分享

感谢群主大大
cemaj
3楼-- · 2019-07-22 01:06
使用什么滤波算法?
cemaj
4楼-- · 2019-07-22 02:35
一般都是adc中断读取时数据。
火山LF
5楼-- · 2019-07-22 03:00
 精彩回答 2  元偷偷看……
火山LF
6楼-- · 2019-07-22 04:29
cemaj 发表于 2016-8-24 16:23
一般都是adc中断读取时数据。

其中之一的滤波方法:
取24个值,排序,前4个和后4个数据不要,只要中间的16个值,然后求平均值,这样的到的AD值会比较准确

一周热门 更多>