日志档案

发表于 2007-1-9 22:11:00

1

标签: AD9858  TS101  

好累好累好累!!凡事多波折

昨天不是说调试出一片AD9858有信号了么,于是组长一大早问我进展的时候,我就演示给她看,奇怪的是没有输出,捣鼓了一阵子,终于出来了想要的频率信号,但再改变频率控制字的时候又不行了,总是在随机的频率点上跳变,原本兴奋的心情,一下子跌到谷底!

这时候过来一个高手,给了一些建议,但我一点头绪都抓不到,心情也很烦躁。组长认为是硬件的问题,而我自信我的板子没有问题,我认为问题出在软件上。组长坚持她的意见,让我一次又一次的Run程序,她抓9858数据、地址、WR和FUD引脚的信号,结果很显然,肯定是一塌糊涂,她让我换片9858试试,我当时还是觉得是软件问题,并且快要吃午饭了,就没有换。

中午连午觉都没有睡,向高手讨教了一下,下午接着检查,反复检查了9858的引脚输入,没有问题,排除了硬件的出问题的可能。这时候师兄看了看我FPGA往9858写的程序,认为我的程序太繁琐(我在process里面加了时钟做敏感信号),说他有一次是把TS101的时序直接赋给了9858,任何额外的时序都没做,结果是对的(昨天谈到过:CPU、功能器件的WR时序是几乎一样的,但我为了谨慎,添加了额外的时序控制)。这个时候,高手过来看看我的DSP程序,建议我改一下写9858寄存器的方式。我按照他们的建议修改了,上电,一看,咦!!真的好了!!!看来,FPGA或者DSP的程序的确有问题。

紧张了一天的神经,终于可以轻松了,晚上请师兄吃饭,然后早点回家,洗洗衣服,这时,倦意才一起涌上来,感觉肋部都有些酸了,唉,做技术,苦啊!

这里,要提到我犯下的几个失误,一是,没有把9858的RD脚通过FPGA连到DSP上,否则可以利用TS101的外部数据读写功能直接看送给9858的频率控制字对不对,就不用逻辑分析仪那么麻烦了;二是,考虑问题一上来可以尽量简单,过分谨慎反而不好。

下面把我调试用的部分程序写一些,希望能对大家有所帮助。

代码:TS101写9858频率控制字程序.c

include

include

include

#define  FPGA  0x8000000

#define Addr 0x00

int i  ,  ii;

int FTW[34]={ ............};

main()

{

       _buildin_sysreg_write(_SYSCON,0x.........);

      _buildin_sysreg_write(_SQCTL,0x..........);

      for(ii=0;ii<34;ii++)

      {

            *((int *)(FPGA+Addr+ii))=FTW[ii];

      }

     _buildin_sysreg_write(_SQCTL,0x..........);

}

因为是凭记忆写的,难免有错误,并且,具体的值都记不大清楚了,大家包涵。

系统分类: DSP   |   用户分类: 无分类   |   来源: 无分类   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(924)    回复(8)  

投一票您将和博主都有获奖机会!

  • 许诺

    2007-3-25 20:21:01

    看到你的关于ad9858的软件部分的程序很开心,我已经找了很多了,就是没找到,今天突然发现了,好开心啊,感觉有救了,前一阵子好郁闷啊,很烦恼,唉,好痛苦,可是今天看到你的文章,真的很开心。我最近也在搞ad9858的软件程序部分,搞的好郁闷,又找不到详细资料,你可不可以帮帮我啊?我很急啊。

  • 许诺

    2007-3-25 20:21:50

    我的qq是499194127,等待你的回音!!!

  • yeaho

    2007-1-10 22:14:10

    谢谢大家的鼓励!

  • riple

    2007-1-10 19:00:20

    “但我为了谨慎,添加了额外的时序控制”:这样做确实可能有问题。一是引入了最大一个FPGA时钟周期的延时,破坏正常的cpu读写时序;二是只用一级时钟同步会引入亚稳态的问题,比较危险。

  • avan

    2007-1-10 8:11:59

    失败是成功之母。总结工作和学习中的经验教训,这对自己对别人都很有意义的。坚持!!!

  • liuxing024

    2007-6-24 16:20:30

    我也正在搞这方面的,可惜对于9858内部程序很是头疼,可以发给我不,我想借鉴一下,liuxing024@163.com,谢了

  • liuxing024

    2007-6-24 16:21:47

    对了,忘记一件事,我还不知道,控制字是怎么计算出来的

     

  • 石头

    2007-8-6 10:44:06

    你好

    我也在搞这个 可 一直没有出结果。能不能 给你打电话阿???