标题:
mc9s12xdp512 的16通道AD转换问题[求助]
[打印本页]
作者:
mmengzhao
时间:
2008-3-18 10:20
标题:
mc9s12xdp512 的16通道AD转换问题[求助]
//BUS CLK = 50MHz
////////////////////////////////////////////
ATD1CTL0 = 0x00;
ATD1CTL2 = 0xC0; //AD模块上电, 快速清零, 无等待模式, 禁止外部触发, 中断禁止
ATD1CTL3 = 0x00; //16通道连续转换,不使用FIFO
ATD1CTL4 = 0x2C; //10bit, sample time is 4ATD, clock cycles/ Fadclk=Fbus/(2*(PRS+1))=1.923Mhz
ATD1TEST1= 0;
ATD1DIEN = 0;//禁止数字输入
ATD1CTL5 = 0xb0; //多通道连续转换,无符号.
//////////////////////////////////////////////////////
if(ATD1STAT1_CCF0)
uADValue[0] = ATD1DR0;
if(ATD1STAT1_CCF1)
uADValue[1] = ATD1DR1;
if(ATD1STAT1_CCF2)
uADValue[2] = ATD1DR2;
if(ATD1STAT1_CCF3)
uADValue[3] = ATD1DR3;
if(ATD1STAT1_CCF4)
uADValue[4] = ATD1DR4;
if(ATD1STAT1_CCF5)
uADValue[5] = ATD1DR5;
if(ATD1STAT1_CCF6)
uADValue[6] = ATD1DR6;
if(ATD1STAT1_CCF7)
uADValue[7] = ATD1DR7;
if(ATD1STAT2_CCF8)
uADValue[8] = ATD1DR8;
if(ATD1STAT2_CCF9)
uADValue[9] = ATD1DR9;
if(ATD1STAT2_CCF10)
uADValue[10] = ATD1DR10;
if(ATD1STAT2_CCF11)
uADValue[11] = ATD1DR11;
if(ATD1STAT2_CCF12)
uADValue[12] = ATD1DR12;
if(ATD1STAT2_CCF13)
uADValue[13] = ATD1DR13;
if(ATD1STAT2_CCF14)
uADValue[14] = ATD1DR14;
if(ATD1STAT2_CCF15)
uADValue[15] = ATD1DR15;
////////////////////////////////////////////////////
问题
: 16个通道连续采样,从通道0开始,转换结果寄存器读到的AD值为同一值,而实际输入电压大小不同,当ATD1CTL5 = 0xb1,从通道1或者其它通道开始采样时,转换结果寄存器读到的AD值会为不同值,但是对应转换结果寄存器得到的值不是对应通道的值,其中有些采样值和任何一输入电压都不符合
请斑竹看看,调了几天了都找不出原因。
作者:
strongchen
时间:
2008-3-18 11:35
你的参考电压引脚连接好了吗?电平是多少?
作者:
mmengzhao
时间:
2008-3-18 14:15
参考电源连接了,VDDA,VRH 为5V,VSSA,VRL为0。
斑竹能提供例子程序吗,实在不知问题出在哪里
作者:
strongchen
时间:
2008-3-18 17:04
把你的整个PROJECT打包贴出来看看吧。
作者:
mmengzhao
时间:
2008-3-18 17:33
整个工程文件在里面了,斑竹能用开发板调试下吗
作者:
strongchen
时间:
2008-3-19 10:02
工程文件并没有上传。
作者:
mmengzhao
时间:
2008-3-19 13:30
已经上传了,斑竹有邮箱吗,我传到邮箱
作者:
strongchen
时间:
2008-3-19 13:52
请用贴子下部的快速回复窗口上传附件。
作者:
mmengzhao
时间:
2008-3-20 10:47
用了贴子下部的快速回复窗口上传附件,却上传不了
作者:
mmengzhao
时间:
2008-3-20 10:49
[upload=image/bmp]uploadImages/1.bmp[/upload]
作者:
mmengzhao
时间:
2008-3-20 10:50
http://bbs.chinaecnet.com/uploadImages/16 ATD.rar
作者:
mmengzhao
时间:
2008-3-20 10:55
传上来了,请斑竹看看.
mc9sxdp512为什么要用两个ATD模块,一个为采集8个通道模块,一个为采集16个通道模块,要采集0-16个通道,象mc9sxep100一样直接用一个采集16个通道的模块不就行了吗?
作者:
strongchen
时间:
2008-3-20 11:08
上传文件名中不能有空格,也不能有中文,否则无法链接。
作者:
康桥人
时间:
2008-3-20 11:26
strongchen 真热心,顶一个,
作者:
mmengzhao
时间:
2008-3-20 15:45
http://bbs.chinaecnet.com/uploadImages/16ATD.rar
谢谢斑竹的耐心帮助!
作者:
伊独侠客
时间:
2008-3-20 22:32
我也曾经碰到过这种情况!
最后是由于开发板与要进行AD转换的电阻两端电压没有共地!(我是对一个可变电阻进行AD转换的实验)
作者:
mmengzhao
时间:
2008-3-21 12:06
斑竹 收到工程了吗 ?
作者:
TristoneGao
时间:
2008-3-21 17:13
有以下两点,请检查:
1) 您使用的是freescale的S12XDT512的demo板吗?如果是,则请注意:
demo板上的是80Pin的MCU,只有ATD0的8通道,没有ATD1,而您使用的是ATD1;
2) S12XDT512的主频最高只能设为40M;S12XEP100才支持50M。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0