文章目录
引言
本文为AD9910的芯片阅读笔记,本文并不是对芯片手册的纯粹照搬,所以建议结合芯片手册阅读。通过对AD9910芯片手册的理解,然后再去配置寄存器,下一篇文章将介绍AD9910的Verilog程序。关于AD9910的Verilog程序,其实一拖再拖,终于在疫情期间写了大部分,在2020.5.10左右重新看了看芯片手册,对程序完成了调试。
另外AD9910有几种模式,本篇文章以串行模式进行配置,经过我阅读芯片手册后的理解是,AD9910的串行模式需要通过SPI 三线/四线 模式 配置好33个寄存器,并且值得注意的是这22个寄存器的长度还不一样。因此,如果要用Verilog来模块化的化,需要实现考虑好这些问题,怎么才能使代码简化,并且方便以后更改和复用,比如以后如果要用100个寄存器SPI配置,长度还不一样,怎么快速将这个代码搬移过去。或许可以尝试将寄存器的值写到ROM中,我这里是直接在Verilog中写到寄存器里面了,如有需要,你可以尝试更改为适合你的coding style。
串行编程
AD9910的串行通讯用的是SPI模式,支持三线或者两线模式,另外,两个可选的引脚I/O—RESET和CS/ 可以提高采用AD9910的设计系统灵活性。另外,AD9910支持四种运作模式,在本文中仅仅以单频模式进行介绍,目的是生成一个200MHz的模拟信号即可。 其余模式也是可以通过串行编程配置,所以,这里不再介绍。
通用串行IO操作包括两个阶段,第一个阶段是指令,第二个阶段是数据。在写入周期结束后,编程数据会驻留在串行端口缓冲器中,处于无效状态,I/O—UPDATE将串行端口

本文深入解析AD9910芯片的串行编程技巧,涵盖SPI模式配置、寄存器值获取及Verilog程序调试。适用于希望掌握AD9910串行通讯与寄存器配置的工程师。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



