⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad9851.c

📁 很好用的AD9851控制程序
💻 C
字号:
#include<reg52.h>
#include"AD9851.H"

void ad9851_reset()						 //初始化
{
	w_clk=0;
	fq_ud=0;

	w_clk=1;
	w_clk=0;

	fq_ud=1;
	fq_ud=0;
}

void ad9851_write(uchar m,lint k)		//写控制字
{
	uchar i;
	fq_ud=0;
	for(i=0;i<32;i++)
	{
		if(((k>>i)&1)==1) sdata=1;
		else sdata=0;
		w_clk=1;
		w_clk=0;
	}

	
	for(i=0;i<8;i++)
	{
		if(((m>>i)&1)==1) sdata=1;
		else sdata=0;
		w_clk=1;
		w_clk=0;
	}

	fq_ud=1;
	fq_ud=0;	 

} 

lint ad9851_cal(lint k) 		//频率计算
{
	return(fins*k);
}

uchar ad9851_phase(uint k)		//相位计算
{
	uchar i;
	i=k/phs;
	return((i<<3)|0x01);
}

void ad9851(lint Frequency,uint phase)
{
	lint i;
	uchar k;
	reset=0;
	ad9851_reset();
	i=ad9851_cal(Frequency);
	k=ad9851_phase(phase);
	ad9851_write(k,i);
	P1=~k;		
}

void main()
{
	 ad9851(1045000,0);	//写入频率值和相位值,当前频率为1.045MHz,相位为0
	 while(1);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -