📄 ad9851.h
字号:
#ifndef AD9851_2006_10_10
#define AD9851_2006_10_10
//======IO Define=======
sbit FQ_QD_AD9851 = P3^2;
sbit CLK_AD9851 = P3^1;
sbit DataIn_AD9851 = P1^0;
sbit RST_AD9851 = P3^0;
//======================
unsigned long int freq = 0;
//unsigned char Control_AD9851 = 0x09; // Phase0 ,power down mode and 6 REFCLK Multiplier enable
//unsigned char Control_AD9851 = 0x00; // Phase0 ,power on mode and 6 REFCLK Multiplier disable
unsigned char Control_AD9851 = 0x01; // Phase0 ,power on mode and 6 REFCLK Multiplier enable
/*
void Parallel2Serial_AD9851()
{
CLK_AD9851 = 0;
FQ_QD_AD9851 = 0;
_nop_();
CLK_AD9851 =1;
_nop_();
CLK_AD9851 = 0;
_nop_();
FQ_QD_AD9851 = 1;
_nop_();
FQ_QD_AD9851 = 0;
_nop_();
}
*/
void SentFreq()
{
unsigned char i;
unsigned int temp;
// EA = 0;
FQ_QD_AD9851=0;
for(i=0;i<32;i++)
{
CLK_AD9851 = 0;
temp=( ( freq >> i ) & 1 );
DataIn_AD9851 = temp;
CLK_AD9851 = 1;
}
for(i=0;i<8;i++) //phase-b4 ph-b3 ph-b2 ph-b1 ph-b0 Power-down Logic0* 6*REFCLK Multiplier_En
{
CLK_AD9851 = 0;
temp=( ( Control_AD9851 >> i ) & 1 );
DataIn_AD9851 = temp;
CLK_AD9851 = 1;
}
CLK_AD9851 = 0;
FQ_QD_AD9851 = 1;
FQ_QD_AD9851 = 0;
// EA = 1;
}
void Set_Freq(unsigned long int Freqency)
{
// freq= (unsigned long int)(28.63320*Freqency); // SYSCLK = 150 MHz
freq=29*Freqency; // SYSCLK = 150 MHz
SentFreq();
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -