日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

MSP430驅(qū)動(dòng)DDS模塊AD9851

單片機(jī)
2018-07-17 11:40
收藏


#include"msp430x14x.h"

#definead9581_w_clkP2DIR|=BIT0//寫時(shí)鐘信號(hào)于P2.0口

#definead9581_w_clk_HP2OUT|=BIT0//P2.0輸出高電平

#definead9581_w_clk_LP2OUT&=~BIT0//P2.0輸出低電平

#definead9851_fq_upP2DIR|=BIT1//寫頻率值于P2.1口

#definead9851_fq_up_HP2OUT|=BIT1//P2.1輸出高電平

#definead9851_fq_up_LP2OUT&=~BIT1//P2.1輸出低電平

#definead9851_restP2DIR|=BIT2//寫復(fù)位信號(hào)P2.1口

#definead9851_rest_HP2OUT|=BIT2//P2.2輸出高電平

#definead9851_rest_LP2OUT&=~BIT2//P2.2輸出低電平

#definead9851_bit_dataP4DIR|=BIT7//寫數(shù)據(jù)于P4.7口

#definead9851_bit_data_HP4OUT|=BIT7//P4.7輸出高電平

#definead9851_bit_data_LP4OUT&=~BIT7//P4.7輸出低電平

//***************************************************//

//ad9851復(fù)位(并口模式)//

//---------------------------------------------------//

voidad9851_reset()

{

ad9581_w_clk;

ad9581_w_clk_L;

ad9851_fq_up;

ad9851_fq_up_L;

//rest信號(hào)

ad9851_rest;

ad9851_rest_L;

ad9851_bit_data_H;

ad9851_bit_data_L;

}

//***************************************************//

//ad9851復(fù)位(并口模式)//

//---------------------------------------------------//

voidad9851_reset_serial()

{

ad9581_w_clk;

ad9581_w_clk_L;

ad9851_fq_up;

ad9851_fq_up_L;

//rest信號(hào)

ad9851_rest;

ad9851_rest_L;

ad9851_bit_data_H;

ad9851_bit_data_L;

//w_clk信號(hào)

//ad9581_w_clk;

ad9581_w_clk_L;

ad9581_w_clk_H;

ad9581_w_clk_L;

//fq_up信號(hào)

//ad9851_fq_up;

ad9851_fq_up_L;

ad9851_fq_up_H;

ad9851_fq_up_L;

}

//***************************************************//

//向ad9851中寫命令與數(shù)據(jù)(并口)//

//---------------------------------------------------//

voidad9851_wr_parrel(unsignedcharw0,doublefrequence)

{

unsignedcharw;

longinty;

doublex;

//計(jì)算頻率的HEX值

x=4294967295/180;//適合180M晶振/180為最終時(shí)鐘頻率(或30M六倍頻)

//如果時(shí)鐘頻率不為180MHZ,修改該處的頻率值,單位MHz?。。?/p>

frequence=frequence/1000000;

frequence=frequence*x;

y=frequence;

P4DIR|=0xFF;

//寫w0數(shù)據(jù)

w=w0;

P4OUT|=w;//w0

ad9581_w_clk_H;

ad9581_w_clk_L;

//寫w1數(shù)據(jù)

w=(y>>24);

P4OUT|=w;//w1

ad9581_w_clk_H;

ad9581_w_clk_L;

//寫w2數(shù)據(jù)

w=(y>>16);

P4OUT|=w;//w2

ad9581_w_clk_H;

ad9581_w_clk_L;

//寫w3數(shù)據(jù)

w=(y>>8);

P4OUT|=w;//w3

ad9581_w_clk_H;

ad9581_w_clk_L;

//寫w4數(shù)據(jù)

w=(y>>=0);

P4OUT|=w;//w4

ad9581_w_clk_H;

ad9581_w_clk_L;

//移入始能

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//***************************************************//

//向ad9851中寫命令與數(shù)據(jù)(串口)//

//---------------------------------------------------//

voidad9851_wr_serial(unsignedcharw0,doublefrequence)

{

unsignedchari,w;

longinty;

doublex;

ad9851_bit_data;

//計(jì)算頻率的HEX值

x=4294967295/180;//適合180M晶振/180為最終時(shí)鐘頻率(或30M六倍頻)

//如果時(shí)鐘頻率不為180MHZ,修改該處的頻率值,單位MHz?。?!

frequence=frequence/1000000;

frequence=frequence*x;

y=frequence;

//寫w4數(shù)據(jù)

w=(y>>=0);

for(i=0;i<8;i++)

{

ad9851_bit_data_H|((w>>i)&0x01);

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//寫w3數(shù)據(jù)

w=(y>>8);

for(i=0;i<8;i++)

{

ad9851_bit_data_H|((w>>i)&0x01);

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//寫w2數(shù)據(jù)

w=(y>>16);

for(i=0;i<8;i++)

{

ad9851_bit_data_H|((w>>i)&0x01);

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//寫w1數(shù)據(jù)

w=(y>>24);

for(i=0;i<8;i++)

{

ad9851_bit_data_H|((w>>i)&0x01);

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//寫w0數(shù)據(jù)

w=w0;

for(i=0;i<8;i++)

{

ad9851_bit_data_H|((w>>i)&0x01);

ad9581_w_clk_H;

ad9581_w_clk_L;

}

//移入始能

ad9851_fq_up_H;

ad9851_fq_up_L;

}

intmain(void)

{

//Stopwatchdogtimertopreventtimeoutreset

WDTCTL=WDTPW+WDTHOLD;

//---------------------------------------------------//

//并行寫1000Hz程序

ad9851_reset();

ad9851_wr_serial(0x01,1000);

//0X01為開(kāi)六備頻

//ad9851_wr_parrel(0x00,1000);

//0X00為不開(kāi)六備頻

//---------------------------------------------------//

//---------------------------------------------------//

//串行寫1000Hz程序

//ad9851_reset_serial();

//ad9851_wr_serial(0x01,1000);

//0X01為開(kāi)六備頻

//ad9851_wr_serial(0x00,1000);

//0X00為不開(kāi)六備頻

//---------------------------------------------------//

while(1)

{

}

return0;

}


相關(guān)推薦