打印

想问问各位大侠给个双路AD转换的思路

[复制链接]
1632|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小鱼儿1045|  楼主 | 2012-10-31 22:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在程序要检测两个模拟量,所以就要在AD通道上切换。以前都是一路AD,所以没什么问题,双路AD了,要切换通道。感觉数据就不对了。
我的AD思路是(PIC16F876):

打开 Channel RA0;
ADGO = 1;   启动AD
while(!ADIF);等待中断标志
ADProcess();AD处理程序

打开 Channel RA1;
ADGO = 1;
while(!ADIF);
ADProcess();AD处理程序

但是效果不好,数据经常出错。
请问大家做双路AD的时候是怎么个编程思想啊?

相关帖子

沙发
江枫渔火| | 2012-11-1 09:20 | 只看该作者
切换通道后,延迟一会儿再采样,下发采样命令后,延迟一会儿再取数

使用特权

评论回复
板凳
江枫渔火| | 2012-11-1 09:24 | 只看该作者
保证开始采样的时候,通道已经切换稳定(模拟开关延时在ns级别,主要是后面的滤波电容延迟,以及ADC内部C必须的充电时间),保证取数的时候,采样已经完成。
做到了,采样自然不会有不对的情况了。

使用特权

评论回复
地板
dqyubsh| | 2012-11-1 14:06 | 只看该作者
把其它程序,包括中断、定时器之类的都裁剪掉,只留ADC部分,看看对不对。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

70

主题

1965

帖子

19

粉丝