智能车制作

标题: 紧急求助 AD采样的问题 [打印本页]

作者: kuwei_001    时间: 2009-5-19 13:47
标题: 紧急求助 AD采样的问题
请问能根据下边的代码确定每个光电管接的是单片机上哪个AD口吗?如果不能请大家告诉一下如何判断?紧急求助 谢谢大家!

void AD_GetValue() //读取AD转换结果
{
while(!ATD0STAT1_CCF0 &&
!ATD0STAT1_CCF1 &&
!ATD0STAT1_CCF2 &&
!ATD0STAT1_CCF3 &&
!ATD0STAT1_CCF4 &&
!ATD0STAT1_CCF5 &&
!ATD0STAT1_CCF6 &&
!ATD0STAT1_CCF7) ; //等待转换结束
while(!ATD1STAT1_CCF0 &&
!ATD1STAT1_CCF1 &&
!ATD1STAT1_CCF2 &&
!ATD1STAT1_CCF3 &&
!ATD1STAT1_CCF4 &&
!ATD1STAT1_CCF5 &&
!ATD1STAT1_CCF6 &&
!ATD1STAT1_CCF7) ; //等待转换结束

Value[0]=ATD1DR0L>0xe5?1:0;
Value[1]=ATD1DR1L>0xe5?1:0;
Value[2]=ATD1DR2L>0xe5?1:0;

Value[3]=ATD0DR0L>0xe5?1:0;
Value[4]=ATD0DR1L>0xe5?1:0;
Value[5]=ATD0DR2L>0xe5?1:0;
Value[6]=ATD0DR3L>0xe5?1:0;
Value[7]=ATD0DR4L>0xe5?1:0;
Value[8]=ATD0DR5L>0xe5?1:0;
Value[9]=ATD0DR6L>0xe5?1:0;
Value[10]=ATD0DR7L>0xe5?1:0;

Value[11]=ATD1DR5L>0xe5?1:0;
Value[12]=ATD1DR6L>0xe5?1:0;
Value[13]=ATD1DR7L>0xe5?1:0;
velocitycount=velocitycount_temp;
}
作者: 星空下的学生    时间: 2009-5-19 18:22
从上代码只能看出用了哪几个AD口: ATD0DR0L--ATD0DR7L,代表AD0--AD7,ATD1DRL--ATD1DR7L代表AD8--AD14。
方法:看你板子的连线,再看看板子与光电管板子的连线,还有就是光电管的连线,你可以顺着一条线走,也就是你可以顺着你的AD0口向光电管板子上找,一直找到对应管子,如果是分时点亮之类的就要看一看你用的芯片的输入输出,对应上找就可以了
作者: kuwei_001    时间: 2009-5-19 23:29
2# 星空下的学生

那岂不是用了15个AD口,可是只有14只光电管啊。其实我不是参加比赛,我是做毕设,是按照人家以前的报告做的,所以有一些地方不懂,希望能跟老兄交流一下。老兄是否可以留下邮箱?我的kuwei_001@163.com
作者: he251125    时间: 2010-4-12 23:55
也很恼火 现在还不知道怎么采集信号呢




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2