已回答假定已回答

关于AD9910 RAM配置问题

TONG 在 2016-12-31 詢問的問題
最後回覆由hpkamen於2017-1-5提供

     最近在做一个需要AD9910的工程,里面需要扫频,由于第一次做关于AD9910的项目,有许多问题现在还不理解,说出来大家讨论一下,先谢谢各位工程师。

     1、根据手册,现在可以做到线性扫频,利用的是AD9910的RAM模式,依次配置CRF2,CRF3,CRF0E(循环模式),0x16,CRF1(使能RAM),IO_updata。

     2,在上一个扫频的已实现的基础上又增加另外一个扫频。具体步骤是依次配置CRF2,CRF3,CRF0E(循环模式,同时选择profile0),CRF1(使能RAM),IO_updata,扫频一定时间后,CRF1(禁止RAM),CRF0F(循环模式,同时选择profile1),0x16,CRF1(使能RAM),IO_updata。这样操作之后,AD9910并没有按照我想的那样工作,反而出现了不可预知的现象,输出一个点频,不进行第二次扫频。

     后来我仔细看的手册,手册上描述的是,先禁止RAM,然后配置CRF0E,CRF0F,然后把profile置0,再然后配置0x16,把把profile置1,接着配置0x16,最后CRF1(使能RAM),IO_updata。每次配置0x16时,都重新发送RAM的地址(0x16)。结果依然是不进行第二次扫频。当profile管脚变化时,输出频率也没有变化。

     经过几天钻研,我仿佛进入死胡同,完全没有头绪。以上就是我的困惑。

     还有,CRF0E和CRF0F的地址是分开的,不重叠的。

     最后一个问题:是不是每次RAM加载都会把之前保存的数据覆盖,假如第一次RAM加载时保存在地址0~63,第二次RAM加载时保存在64~89,那么第二次保存的数据就会覆盖之前的数据,导致出错呢?

結果