新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AD9850(DDS)驅動程序

        AD9850(DDS)驅動程序

        作者: 時間:2016-11-29 來源:網絡 收藏
        //串行時序
        #include sbit ad9850_fq_up    =P1^1;  //接ad9850的fq_up腳sbit ad9850_bit_data =P1^2;  //接ad9850的D7腳sbit ad9850_w_clk    =P1^3;  //接ad9850的w_clk腳//***************************************************////          向ad9850中寫命令(串口)             ////---------------------------------------------------//void ad9850_wr_com(unsigned char w, double frequence){unsigned char i;unsigned long int M;//計算頻率值frequence=frequence*85.89934592+0.5; //適合50M晶振  f=fclk*M/2^32即M=f*2^32/fclkM=frequence;        //頻率控制字ad9850_w_clk=0;       //初始化 ad9850_fq_up=0;//寫頻率控制字for(i=0;i<32;i++)       //連續寫入32位頻率控制字{ad9850_w_clk=0;ad9850_bit_data=(bit)((M>>i)&0x0001);ad9850_w_clk=1;         //上升沿寫入數據}//寫相位控制字  for(i=0;i<8;i++)        //需要w<=32  相位有180、90、45、22.5、11.25以及它們的組合。{ad9850_w_clk=0;ad9850_bit_data=(bit)(w>>i)&0x01;ad9850_w_clk=1;         //上升沿寫入數據}//移入始能 ad9850_fq_up=0;       ad9850_fq_up=1;         //上升沿將40位數一次性打入數據寄存器}void main(){ad9850_wr_com(0,1000000);    while(1);}//該芯片使用簡單,新手可能困惑于相位,如無特殊情況相位設置為0即可,如需參考不明白處可留言。


        關鍵詞: AD9850DDS驅動程

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 永登县| 同江市| 沅江市| 苗栗市| 旺苍县| 大洼县| 弥渡县| 长子县| 横峰县| 织金县| 宣武区| 商都县| 武平县| 遂昌县| 惠安县| 通州市| 怀仁县| 平谷区| 镇康县| 芒康县| 岳池县| 黄山市| 晋中市| 麻栗坡县| 武隆县| 松阳县| 汪清县| 施秉县| 宁安市| 金川县| 容城县| 平乐县| 环江| 土默特右旗| 诏安县| 谷城县| 民丰县| 鄂温| 苏尼特右旗| 永春县| 临沂市|