AD9833读数据程序
0赞
发表于 7/10/2012 10:08:23 PM
阅读(2411)
单片机通常都有内部固定时钟,但是这个时钟经常不是非常精确,所以就需要我们在使用的时候自己来配置时钟,这个时候DDS就派上了用场。ADI公司的AD系列芯片都是不错的选择,先来介绍下AD9833。它是一款低功耗、可编程波形发生器,能够产生正弦波、三角波和方波输出。频率寄存器为28位;时钟速率为25 MHz,可以实现0.1 Hz的分辨率。同样,时钟速率为1 MHz时,AD9833可以实现0.004 Hz的分辨率,它通过一个三线式串行接口写入数据。这个串行接口能够以最高40 MHz时钟速率工作,并且与DSP和微控制器标准兼容。
void DDS_Writedata
{
Uchar8 data_num;
Uint16 Data;
FSYNC1=1;
Data=date;
SCLK=1;
delay(4);
FSYNC1=0;
delay(4);
for(data_num=0;data_num<16;data_num++)
{
SCLK=1;
if(Data&0x8000)
SDATA=1;
else
SDATA=0;
delay(50);
SCLK=0;
delay(50);
SCLK=1;
Data=Data<<1;
if(data_num<15)
{
delay(200);
}
delay(20);
SDATA=0;
}
FSYNC1=1;
}
