AD9779A的寄存器配置及PLL频带优化
AD9779A内部有32个寄存器,每个寄存器8位,每位都有自己特定的功能。AD9779A的主要寄存器如表3所列。
表3 AD9779A的主要寄存器
3 AD9779A的寄存器配置
3.1 硬件设计
本文采用三星公司S3C2440作为为整个系统的控制芯片。S3C2440是ARM微处理器,它包含LCD控制器、SDRAM控制器、3通道UART、音频接口、USB控制器、2通道SPI等,其低成本、高性能的特点适用于各种嵌入式领域。S3C2440作为主设备对从设备AD9779A进行配置的硬件连接如图2所示。
图2 S3C2440和AD9779A的接口
S3C2440A的SPI接口可以和外部设备同时发送/接收8位数据,用一个时钟线来同步。当SPI是主机时,传输频率通过设定SPPREn寄存器的相应位来控制,最高速率应小于25 MHz。如果SPI是从属,其他的主机提供时钟。设置一个GPIO作为nSS,当程序写数据到SPTDATn寄存器时,如果ENSCK、SPCONn寄存器的MSTR被置位,SPI发送/接收操作会同时开始。在写字节数据到SPTDATn之前,nSS应该被激活。
SPI接口编程基本步骤如下:
①设置时钟波特率预分频寄存器(SPPREn);
②设置SPCONn配置SPI模块;
③设置一个GPIO引脚,其作为nSS,低电平片选使能;
④发送数据→检查数据传输准备标志(REDY=1)的状态,然后写数据到SPTDATn;
⑤接收数据→写数据0xFF到SPTDATn→确认REDY置1,然后读取缓存数据;
⑥nSS拉高,解除片选。
3.2 软件设计
软件设计主要实现S3C2440读写AD9779A寄存器的功能,为后面的PLL频带锁定做准备。在ARM Realview MDK环境下使用C语言编写软件。
评论