文档库 最新最全的文档下载
当前位置:文档库 › 基于msp430g2553单片机的AD9851程序

基于msp430g2553单片机的AD9851程序

基于msp430g2553单片机的AD9851程序
基于msp430g2553单片机的AD9851程序

#include

#define ad9851_w_clk P2DIR|=BIT2

#define ad9851_w_clk_h P2OUT|=BIT2

#define ad9851_w_clk_l P2OUT&=~BIT2

#define ad9851_fq_up P2DIR|=BIT1

#define ad9851_fq_up_h P2OUT|=BIT1

#define ad9851_fq_up_l P2OUT&=~BIT1

#define ad9851_rest P2DIR|=BIT0

#define ad9851_rest_h P2OUT|=BIT0

#define ad9851_rest_l P2OUT&=~BIT0

#define ad9851_bit_data P1DIR|=BIT7

#define ad9851_bit_data_h P1OUT|=BIT7 #define ad9851_bit_data_l P1OUT&=~BIT7

void ad9851_reset()

{

ad9851_w_clk;

ad9851_w_clk_l;

ad9851_fq_up;

ad9851_fq_up_l;

ad9851_rest;

ad9851_rest_l;

ad9851_rest_h;

ad9851_rest_l;

}

void ad9851_wr_parrel(volatile unsigned char w0,volatile double frequence)

{

volatile unsigned char w;

volatile long int y;

volatile double x;

x=4294967295/180;

frequence=frequence/1000000;

frequence=frequence*x;

y=frequence;

P1DIR|=0xff;

//写w0数据

w=w0;

P1OUT|=w;//w0 ad9851_w_clk;

ad9851_w_clk_h;

ad9851_w_clk_l;

//写w1数据

w=(y>>24);

P1OUT|=w;//w1 ad9851_w_clk;

ad9851_w_clk_h;

ad9851_w_clk_l;

//写w2数据

w=(y>>16);

P1OUT|=w;//w2 ad9851_w_clk;

ad9851_w_clk_h;

ad9851_w_clk_l;

//写w3数据

w=(y>>8);

P1OUT|=w;//w3 ad9851_w_clk;

ad9851_w_clk_h;

ad9851_w_clk_l;

//写w4数据

w=(y>>=0);

P1OUT=w;//w4

ad9851_w_clk;

ad9851_w_clk_h;

ad9851_w_clk_l;

//移入始能

ad9851_fq_up;

ad9851_fq_up_h;

ad9851_fq_up_l;

}

void main(void)

{

WDTCTL=WDTPW+WDTHOLD;

ad9851_reset();

ad9851_wr_parrel(0x01,100);

while(1);

}

相关文档