发布网友 发布时间:2022-04-27 00:09
共2个回答
热心网友 时间:2023-11-13 09:06
我用过AD9850 是8根数据线,3根控制线(不是地址线),程序如下
#define AD9850 P1OUT //数据
#define W_CLK_H P6OUT|=BIT4 //时钟线
#define W_CLK_L P6OUT&=~BIT4
#define FQ_UP_H P6OUT|=BIT5
#define FQ_UP_L P6OUT&=~BIT5
#define RSET_H P6OUT|=BIT6 //复位线
#define RSET_L P6OUT&=~BIT6
long unsigned int f=1000,A9850temp=0;
uchar sendon=1;
uchar Mdata[5]=;
void Deal()
{
double pinlv;
uchar i;
pinlv=f;
pinlv*=107.3742; //系数要根据实际的外接晶振频率而定 本设计有源晶振40M
A9850temp=(long unsigned)pinlv;
Mdata[4]=A9850temp&0x000000ff;
Mdata[3]=(A9850temp>>8)&0x000000ff;
Mdata[2]=(A9850temp>>16)&0x000000ff;
Mdata[1]=(A9850temp>>24)&0x000000ff;
FQ_UP_L;
_NOP();
FQ_UP_H;
_NOP();
FQ_UP_L;
_NOP();
W_CLK_L;
for(i=0;i<5;i++)
{
AD9850=Mdata[i];
W_CLK_H;
delay(200);
W_CLK_L;
}
delay(200);
FQ_UP_H;
}
void AD9850Init()
{ W_CLK_L;
delay(200);
FQ_UP_L;
delay(200);
RSET_H;
delay(200);
RSET_L;
f=100000;
}
void AD9850fun()
}
热心网友 时间:2023-11-13 09:07
我只能弄C语言
热心网友 时间:2023-11-13 09:06
我用过AD9850 是8根数据线,3根控制线(不是地址线),程序如下
#define AD9850 P1OUT //数据
#define W_CLK_H P6OUT|=BIT4 //时钟线
#define W_CLK_L P6OUT&=~BIT4
#define FQ_UP_H P6OUT|=BIT5
#define FQ_UP_L P6OUT&=~BIT5
#define RSET_H P6OUT|=BIT6 //复位线
#define RSET_L P6OUT&=~BIT6
long unsigned int f=1000,A9850temp=0;
uchar sendon=1;
uchar Mdata[5]=;
void Deal()
{
double pinlv;
uchar i;
pinlv=f;
pinlv*=107.3742; //系数要根据实际的外接晶振频率而定 本设计有源晶振40M
A9850temp=(long unsigned)pinlv;
Mdata[4]=A9850temp&0x000000ff;
Mdata[3]=(A9850temp>>8)&0x000000ff;
Mdata[2]=(A9850temp>>16)&0x000000ff;
Mdata[1]=(A9850temp>>24)&0x000000ff;
FQ_UP_L;
_NOP();
FQ_UP_H;
_NOP();
FQ_UP_L;
_NOP();
W_CLK_L;
for(i=0;i<5;i++)
{
AD9850=Mdata[i];
W_CLK_H;
delay(200);
W_CLK_L;
}
delay(200);
FQ_UP_H;
}
void AD9850Init()
{ W_CLK_L;
delay(200);
FQ_UP_L;
delay(200);
RSET_H;
delay(200);
RSET_L;
f=100000;
}
void AD9850fun()
}
热心网友 时间:2023-11-13 09:07
我只能弄C语言