|
![](static/image/common/ico_lz.png)
楼主 |
发表于 2011-5-19 21:42:54
|
显示全部楼层
回复【1楼】msdy
-----------------------------------------------------------------------
好的,谢谢各位。
是的,2楼说的没错,这个芯片确实算时序比较简单,硬件也比较简单。我的项目是一个关于PSD四象限探测器的,构架是前级的运算电路,然后模拟信号经过ADS7825,由FPGA控制其工作(FPGA是用的Altera的EP2C8系列),转换后的数据经过FPGA处理后传输给USB芯片CY7C689013,工作在Slave fifo模式,将数据传送给上位机。我是第一次接触FPGA和USB,所以花了很长时间入门。每部分都差不多就绪后,就差AD转换部分了。其实这部分我在设计时就通过Protues仿真过,用AVR控制,发现能完全按照自己想象的模式工作,所以当时就觉得这个芯片应该FPGA控制也不难。
五一节的时候,终于买回了这个芯片(因为还是实验阶段,买的是直插式,好贵250一片),然后就开始充满热情的调试了。先直接用FPGA控制它,先让他工作在一个通道,数据传到上位机后发现全是0xFF……
然后,调了很多天的软件,结果还是一样的让人郁闷……
后来由于不确定是软件还是硬件的原因,所以我就想先避开FPGA调试,因为仿真是用的AVR是C语言程序比较简单,我就用CY68013直接控制ADS7825,68013也是C,程序比较简单,应该没什么问题了。可是还是出来的结果仍然是0XFF。
其实用68013的时候,我发现他启动了AD转换的,因为AD芯片BUSY引脚确实是有效了,我用了一个循环等待其转换完毕,循环中给标志变量计数赋值,发现标志变量的计数值为8,说明这个循环语句执行了8次,说明AD转换时转换了,当BUSY引脚无效时我就开始读数,读出来时0xFF,但是我去量AD芯片的引脚电压时发现电压为0,接LED灯也不亮,应该是引脚处于高阻态,所以量不出电压,而FPGA或68013去读又当成了1.
我想过芯片的问题,于是买了两块芯片,发现还是一样的结果。甚至更气人的是,我更换芯片的时候发现,没有芯片,结果还是一样……0xff。
后来开始注意力转移到ADS7825是5V单电源供电,是5V的逻辑。而FPGA和68013都是3.3V逻辑,我虽然看了他们的VIH,VIL,VOH,VOL,感觉应该是匹配的,但还是不放心,买了SN74LVC4245电平转换芯片(货还没到,也就还没试)。另外ADS7825为低功耗芯片,50mw吧,我开始时用的USB接口的5V电压供电,后来怕驱动力不够,就换了220->5V降压电源供电,结果都是一样的……0xFF。
现在就快黔驴技穷了,也调了这么久了……希望各位大侠各显神通指点指点。
由于我现在在别人的电脑上,所以需要什么源代码,芯片资料之类的,请指出,我尽快附上。
衷心感谢,祝大家愉快,能帮我尽快解决这个问题。 |
|