花生漫画

AD9833读数据程序

0
阅读(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;		
}