• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于msp430的AD9834掃頻儀

    基于msp430的AD9834掃頻儀

    作者: 時間:2012-08-22 來源:網絡 收藏
    /*****************************************************波形產生程序*****************************************************/#includeMSP430x16x.h>#define    FSYNCL   P2OUT =  ~BIT5  #define    FSYNCH   P2OUT |=   BIT5  #define    SCLKL    P2OUT = ~BIT6  #define    SCLKH    P2OUT |=  BIT6  #define    SDATAL   P2OUT =  ~BIT7#define    SDATAH   P2OUT |=   BIT7double   data=1000 ;#define FCLK 50#define uchar unsigned char#define uint  unsigned int#define ulong unsigned longint x;/**************************發送控制字**************************/void Send_Con(uint Con_word){uchar i;FSYNCL;for(i=0;i16;i++){if ((Con_word0x8000)==0x8000){SDATAH;}elseSDATAL ;Con_word=1;SCLKL;SCLKH;}FSYNCH;}/****************************************************初始化函數:-------------------------------------------------------------------功能:軟件位控制,IOUT正弦波,SIGNBITOUT方波,寫FREQREG0,寫PHASE0Send_Con(0x2038)   一次性寫FREQREG0Send_Con(0x0038)   單獨改寫FREQREG0的LSBSend_Con(0x1038)   單獨改寫FREQREG0的MSB-------------------------------------------------------------------功能:軟件位控制,IOUT三角波寫FREQREG0,寫PHASE0Send_Con(0x2002)   一次性寫FREQREG0Send_Con(0x0002)   單獨改寫FREQREG0的LSBSend_Con(0x1008)   單獨改寫FREQREG0的 MSB*************************//****************************發送頻率字****************************/void Send_Freq(uint Freq_word){uchar i;FSYNCL;for(i=0;i16;i++){if ((Freq_word0x8000)==0x8000){SDATAH;}elseSDATAL ;Freq_word=1;SCLKL;SCLKH;}FSYNCH;}/*****************************  q發送相位字注:根據情況可設定入口參數,設置相位*****************************/void Send_Phase(){Send_Con(0xC000);   //設置初相位為0}/*******************************************************設置頻率值   Freq_value(value)=Freq_data(data)*FCLK/2^282^28=268435456=0x10000000*******************************************************/void zhengxianbo(ulong Freq_value ){ulong value1,value2;uint LSB_D,MSB_D;SCLKH;FSYNCH;value1= Freq_value;value2= Freq_value;LSB_D=(value1%0x4000)+0x4000;  //寫FREQ0 REG 的LSBMSB_D=(value2/0x4000)+0x4000;   //寫FREQ0 REG 的MSBSend_Con(0x2038);    
    //DDS初始化設置,IOUT正弦波,SIGNBITOUT方波,一次性寫FREQREG0Send_Freq(LSB_D); Send_Freq(MSB_D);void Send_Phase();}void main(){uint n;static ulong x=0;static ulong Freq_value;WDTCTL=WDTPW+WDTHOLD;P2DIR=0Xff;while(1){for(x=0;x10;x++){if(x==9)data=1000;elsedata=data+1000*x;Freq_value=(ulong)(data*5.3687);zhengxianbo(Freq_value);for(n=0;n20000;n++);}}}


    關鍵詞: msp430 AD9834 掃頻儀

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 元阳县| 衡东县| 泽库县| 金湖县| 甘孜| 金沙县| 平阳县| 卢龙县| 东阿县| 富锦市| 巴南区| 鱼台县| 射洪县| 龙陵县| 从江县| 上蔡县| 舟山市| 安宁市| 瑞丽市| 日照市| 榆林市| 鄂托克前旗| 出国| 石门县| 嘉黎县| 苏尼特右旗| 正定县| 鹤岗市| 澳门| 调兵山市| 四子王旗| 平凉市| 梁山县| 滕州市| 香港 | 冕宁县| 庆安县| 勐海县| 临西县| 奇台县| 青龙|