標(biāo)題:
MSP430單片機(jī)AD9851 AD9850源碼
[打印本頁]
作者:
嘿嘿哈哈哈哈
時(shí)間:
2019-8-5 19:15
標(biāo)題:
MSP430單片機(jī)AD9851 AD9850源碼
DDS的應(yīng)用
單片機(jī)源程序如下:
#include <msp430x14x.h>
/**********定義w_clk***********************************************************/
#define W_CLK_PORT P3OUT
#define W_CLK_DIR P3DIR
#define W_CLK_BIT BIT5
#define W_CLK_HIGH W_CLK_PORT |= W_CLK_BIT //w_ckl高
#define W_CLK_LOW W_CLK_PORT &=~ W_CLK_BIT //w_clk 低
/**********定義fq_up***********************************************************/
#define FQ_UP_PORT P3OUT
#define FQ_UP_DIR P3DIR
#define FQ_UP_BIT BIT6
#define FQ_UP_HIGH FQ_UP_PORT |=FQ_UP_BIT //FQ_UP高
#define FQ_UP_LOW FQ_UP_PORT &=~FQ_UP_BIT //FQ_UP 低
/**********定義rest***********************************************************/
#define REST_PORT P3OUT
#define REST_DIR P3DIR
#define REST_BIT BIT7
#define REST_HIGH REST_PORT |=REST_BIT //w_ckl高
#define REST_LOW REST_PORT &=~REST_BIT //w_clk 低
int table[5]={100,300,1000,3000,10000};
/*******************************************
函數(shù)名稱:delay
功 能:延時(shí)約 z us的時(shí)間
參 數(shù):z
返回值 :無
********************************************/
void delay(unsigned int z)
{
unsigned char i;
for(i = 0;i < z;i++)
_NOP();
}
/*******************************************
函數(shù)名稱: ad9850_Init
功 能: ad9850初始化
參 數(shù):無
返回值 :無
********************************************/
void ad9850_Init(void)
{
P3DIR|=BIT5+BIT6+BIT7;
P1DIR=0xFF;
P1OUT=0x00;
}
/*******************************************
函數(shù)名稱: ad9850_Reset
功 能: ad9850復(fù)位(并口模式)
參 數(shù):無
返回值 :無
********************************************/
void ad9850_Reset(void)
{
W_CLK_LOW;
FQ_UP_LOW ;
//reset 信號(hào)
REST_LOW;
_NOP();
REST_HIGH;
_NOP();
REST_LOW;
_NOP();
}
/*******************************************
函數(shù)名稱: ad9850_wr_parrel
功 能: w0,frequence --頻率
參 數(shù):無
返回值 :無
********************************************/
void ad9850_Wr_parrel(unsigned char w0,double frequence)
{
unsigned char w;
long int y;
double x;
//計(jì)算頻率的HEX值
x=4294967295/125;//適合125M晶振
//如果時(shí)鐘頻率不為125MHZ,修改該處的頻率值,單位MHz !!
frequence=frequence/1000000;
frequence=frequence*x;
y=frequence;
//寫w0數(shù)據(jù)
w=w0;
P1OUT=w; //w0
W_CLK_HIGH;
_NOP();
W_CLK_LOW ;
_NOP();
//寫w1數(shù)據(jù)
w=(y>>24);
P1OUT=w; //w1
W_CLK_HIGH;
_NOP();
W_CLK_LOW;
_NOP();
//寫w2數(shù)據(jù)
w=(y>>16);
P1OUT=w; //w2
W_CLK_HIGH;
_NOP();
W_CLK_LOW;
_NOP();
//寫w3數(shù)據(jù)
w=(y>>8);
P1OUT=w; //w3
W_CLK_HIGH;
_NOP();
W_CLK_LOW;
_NOP();
//寫w4數(shù)據(jù)
w=(y>>=0);
P1OUT=w; //w4
W_CLK_HIGH;
_NOP();
W_CLK_LOW;
_NOP();
//移入始能
FQ_UP_HIGH;
_NOP();
FQ_UP_LOW;
_NOP();
}
復(fù)制代碼
所有資料51hei提供下載:
DDS.7z
(7.63 MB, 下載次數(shù): 12)
2019-8-6 02:57 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1