ADC转换,芯片是AD9226,这里简单谈谈一些东西。
它的简单介绍必须看的,这样才对芯片有个大致的了解。
12bit精度,65M每秒的采样速率。注意这里的65M,我开始以为可以用65M时钟启动转换,然后得到数据,其实是不对的,
经过实践验证,这个65M每秒的采样速率,估计是指启动转换到转换结果完成的时间,注意,这里说的不是结果输出时间。
在结果转换完成以后,还要输出到IO脚上,这样主控制器才可以读取,这个过程也需要时间,所以,你要是使用65M的时钟触发ADC,然后读取结果,结局是悲剧。看datasheet下面的东西。
Clock period 15.38ns,就是65M
再看Output Enable Delay 15ns ,隐藏的够深吧,就是启动转换到结果输出,需要30.38ns,这还是至少。注解3,说LQFP封装,我的是SSOP封装的,但是实际测试这个时间是一样的,不知道它什么意思。
总结一下,如果你想读到准确的数据,那么你的时钟不要大于33Mhz,否则,你的结果是有问题的。所以我使用的是48Mhz二分频,24Mhz,作为触发时钟,上升触发。读取的结果就是准确的。
如果你增加输入信号的频率,相当于对该信号的转换次数(一个周期里的)减少了,所以,数据间隔很大,分辨度不高了。
我输入的信号是1M-4Mhz的矩形波,结果还可以。
下面是软件读取ADC结果,然后显示的波形图。1M和4M的图。
文章评论(0条评论)
登录后参与讨论