wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

c51單片機驅動AD9954的程序及調試筆記

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年05月30日   【字體:

  2009年寒假前幾天,第一次用51單片機寫AD9954程序,仔細讀了一遍datasheet、并參考前面同學的示例程序之后,只簡單的實現了單頻輸出(Single-tone Mode)。

  一開始調試,先要正確控制SYNC_CLK,因為這個輸出引腳就是內部DDS時鐘的4分頻(假設DDS時鐘最高為400MHz,那么SYNC_CLK此時應當輸出100MHz;反之,通常用SYNC_CLK來推測DDS系統時鐘)。前提是必須復位Control Function Register No.1(CFR1:0x00)中的bit1(SYNC_CLK Disable)。

  然后根據輸入時鐘的頻率正確設置CFR2中的倍頻系數REFCLK Multiplier和VCO Range(0:100~250MHz;1:250~400MHz)。只要外部電路沒什么錯的地方,SYNC_CLK一般都OK了。

  用了才發現,AD9954真的還不錯,400MHz的系統時鐘就先不說了,居然可以用控制字Amplitude Scale Factor (ASF:0x02)調節輸出信號的幅度,前提是打開CFR1中的OSK Enable。并且14bit的長度也能夠達到足夠高的幅度控制精度了。當時作信號源的時候,還用外接AD835+TLV5638控制幅度,現在想來真是憨啊。

  還有就是,輸出信號的相位可調。控制字Phase Offset Word(POW0 0x05)中含有14bit的相位偏移控制字,因此相位調節的精度也是相當高的,可達360°/16384 = 0.022°,在大多數情況下肯定夠用,比AD9851的5bit控制字(360°/32 = 11.25°)強多了。具體見程序1。

  然后想嘗試一下線性掃頻功能(Linear-sweeping Mode),調了一整天都沒出來,然后就放假回家了。

  最近在搞畢業設計(頻率特性測試儀Frequency Response Analyzer)的同時,又把原來的AD9954測試板拿出來調試,Single-Tone Mode當然是沒問題的,這次主要是再一次研究Linear-Sweeping Mode。于是打開原來寫的程序,看了一會兒,調了一會兒,突然發現一個極其簡單的錯誤——控制字的一個字節位置寫錯了,改過來再測試,一切OK。具體見程序2。去年居然花了一整天去查都沒查出來,Wordless。

  好了,現在該最后一關了——RAM模式。Datasheet有關章節再看了一遍,然后大概寫了一個程序試了一下,出來的波形一團糟。于是參考了AD官網的AD9954示例代碼(ASM的,具體見程序3),并和自己寫的一步一步對比,最后終于搞定了。是因為向RAM寫數據的時候,只需要在第一次送數據前送一次RAM指令字節(RAM:0x0b),具體見程序4。但是我沒注意到這一點,每次數據前都送一遍0x0b,結果就悲劇了。不過最后還是發現原因了,嘿嘿!

  下圖是RAM Segment Address Ramp Rate設置為0x0400(1024)時的切換時間測量波形。兩個光標之間的時間大概是10.24us,因為10.24us = 1024×10ns,說明更新速率是10ns,即SYNC_CLK,和線性掃頻時的最快頻率更新速度一樣。

利用AD9954的RAM Mode可以很方便的實現對數掃頻,只需要計算出相應的對數頻率點并存儲進RAM即可。

  除此之外,AD9954還可以實現高速調頻波。如果固定波表1000個點,那么調制波的頻率可以是100kHz,50kHz,33.33kHz……,即100/n kHz(n正整數)。如果采用不定波表500~999個點,則可以實現200kHz以內的,調制波的頻率步進不大于0.4%的調頻波。但實現起來有些麻煩,所以一般不用AD9954作調制波頻率連續可調的調頻波信號源。


 

  現在AD9954的程序部分了解得差不多了,等畢業設計結束之后,有時間了就升級一下以前做的信號源。AD835,TLV5638直接去掉,再加入比較基礎的調頻/調幅功能,還有就是加入一個EEPROM用于幅度校準存儲。另外,硬件電路方面做一板PCB降降噪聲,同時功放輸出的功率也要提升到10Vpp@50歐負載。

下面是部分程序,與有興趣的朋友們一起分享(才起步,拙劣之處還請多多包涵):

公共程序段:

#include< reg51.h>
#include< absacc.h>
#include< intrins.h>
#define uchar unsigned char
sbit ioupdate = P1^0;
sbit sdio     = P1^1;
sbit clk      = P1^2;
sbit adcs     = P1^3;
sbit adreset  = P1^4;
sbit tlvcs    = P1^5;
sbit ps0      = P1^6;
void send(uchar dat)
{
    uchar i;
    for(i=0;i< 8;i++)
    {
        clk = 0;
        dat = _crol_(dat,1);
        sdio = dat&0x01;
        clk = 1;
    }
}
      程序1:(Single-Tone Mode)
void main()
{
    P1 = 0xff;
    adreset = 0;
    adcs = 0;
    send(0x00);        //CFR1
    send(0x02);        //bit1 OSK Enable,bit0 Auto OSK Enable;
    send(0x00);
    send(0x00);
    send(0x42);        //bit6 comp PD,bit1 SYNC_clk Disable;SYNC_clk = DDSclk/4;
    ioupdate = 0;
    ioupdate = 1;
 
    send(0x01);         //CFR2
    send(0x00);         //not used;
    send(0x08);         //bit3 High Speed SYNC Enable;
send(0xa4);         //bit7-bit3 REF clk Multiplier factor;bit2 VCO Range  
                    //(0:100-250;1:250-400);bit1-bit0 Charge Pump;
    send(0x02);        //ASF,when OSK Enabled(CFR1 bit25);
    send(0x3f);
    send(0xff);
 
    send(0x04);        //FTW0  0x 00 a3 d7 0a=1MHz  (0x ff ff ff ff ==> 400MHz)
    send(0x00);
    send(0xa3);
    send(0xd7);
    send(0x0a);
 
    send(0x05);        //POW0,Phase Initial
    send(0x00);
    send(0x00);
    ioupdate = 0;
    ioupdate = 1;
    adcs = 1;
 
    adcs = 0;           //POW0.Phase shift 180 (0x 3f ff ==> 360)
    send(0x05);
    send(0x20);
    send(0x00);
    adcs = 1;
    ioupdate = 0;
ioupdate = 1;
}
      程序2:(Linear-Sweeping Mode)
void main()
{
    P1 = 0xff;
    adreset = 0;
 
    adcs = 0;
    send(0x00);         //CFR1
    send(0x00);
    send(0x20);         //bit5 Linear Sweeping Enable
    send(0x00);
    send(0x46);         //bit2 Linear Sweeping No-Dwell
    ioupdate = 0;
ioupdate = 1;
 
    send(0x07);         //NLSCW
    send(0x10);
    send(0x00);
    send(0x00);
    send(0x00);
    send(0x10);
 
    send(0x08);        //PLSCW
    send(0x10);
    send(0x00);
    send(0x00);
    send(0x00);
    send(0x10);
 
    send(0x04);        //FTW0   0x 00 a3 d7 0a ==1MHz (0x ff ff ff ff ==> 400MHz)
    send(0x00);
    send(0xa3);
    send(0xd7);
    send(0x0a);
 
    send(0x06);        //FTW1  0x 01 68 72 b0 ==2.2MHz (0x ff ff ff ff ==> 400MHz))
    send(0x01);
    send(0x68);
    send(0x72);
    send(0xb0);
    adcs = 1;
    ioupdate = 0;
    ioupdate = 1;
 
    ps0 = ~ps0;        //Toggle ps0 to sweep;
    ps0 = ~ps0;
}
      程序3:(AD9954_ADIcode)

      程序4:(RAM Mode) 
void main()
{
    P1 = 0xff;
    ps0 = 0;
    adreset = 0;
    adcs = 0;
    send(0x01);       //CFR2
    send(0x00);       //not used;
    send(0x00);       //bit3 High Speed SYNC Enable;
    send(0xa4);       //bit7-bit3 REF clk Multiplier factor; bit1-bit0 Charge Pump;
 
    send(0x04);       //FTW0;
    send(0x12);
    send(0xf6);
    send(0x84);
    send(0xbe);
    ioupdate = 0;
    ioupdate = 1;
 
    send(0x00);       //CFR1
    send(0x80);       // bit7 RAM Enable;bit5-3 Internal Profile Control
    send(0x00);
    send(0x02);        //bit1 SDIO Only;
    send(0x00);        //bit6 comp PD,bit1 SYNC_clk Disable;SYNC_clk = DDSclk/4;
 
    send(0x02);        //ASF,when OSK Enabled(CFR1 bit25);
    send(0x3f);
    send(0xff);
    ioupdate = 0;
    ioupdate = 1;
 
    send(0x07);        //RSCW0;ps0 = 0; ps1 = 0;
    send(0xff);         //RAM Segment Address Ramp Rate< 7:0>
    send(0xff);         //RAM Segment Address Ramp Rate< 15:8>
    send(0x07);
    send(0x00);        //Segment0 Address:0x00000-0x00007
    send(0x00);        //RSCW0
 
    send(0x08);        //RSCW1;ps0 = 1; ps1 = 0;
    send(0xff);         //RAM Segment Address Ramp Rate< 7:0>
    send(0xff);         //RAM Segment Address Ramp Rate< 15:8>
    send(0x00);
    send(0x01);        //Segment1 Address:0x00000-0x00001
    send(0x04);
    adcs = 1;
    ioupdate = 0;
    ioupdate = 1;
 
    adcs = 0;
    send(0x0b);        //RAM
    send(0x00);        //stall freq into RAM from the final address to beginning address;
    send(0xa3);
    send(0xd7);
    send(0x0a);                  //RAM0     1MHz
 
    send(0x00);
    send(0xf5);
    send(0xc2);
    send(0x8f);                   //RAM1      1.5MHz
 
    send(0x01);
    send(0x47);
    send(0xae);
    send(0x14);                   //RAM2       2MHz
 
    send(0x01);
    send(0x99);
    send(0x99);
    send(0x99);                   //RAM3       2.5MHz
 
    send(0x01);
    send(0xeb);
    send(0x85);
    send(0x1e);                   //RAM4       3MHz
 
    send(0x02);
    send(0x3d);
    send(0x70);
    send(0xa3);                   //RAM5       3.5MHz
 
    send(0x02);
    send(0x8f);
    send(0x5c);
    send(0x28);                   //RAM6       4MHz
 
    send(0x02);
    send(0xe1);
    send(0x47);
    send(0xae);                   //RAM7       4.5MHz
 
    ps0 = 1;
    send(0x0b);         //RAM Instruction Again
    send(0x03);
    send(0x33);
    send(0x33);
    send(0x33);                   //RAM0       5MHz
 
    ioupdate = 0;
    ioupdate = 1;
 
    send(0x07);         //RSCW0;ps0 = 0; ps1 = 0;
    send(0x00);         //RAM Segment Address Ramp Rate< 7:0>
    send(0x04);         //RAM Segment Address Ramp Rate< 15:8>
    send(0x07);
    send(0x00);
    send(0x60);         //RAM Mode of Operation: Continuous Bidirectional Ramp
    adcs = 1;            //RSCW0
    ioupdate = 0;
    ioupdate = 1;
}
關閉窗口

相關文章

九九免费精品视频| 亚洲av中文无码乱人伦在线视色| 久久久久成人网| 91视频免费观看| 涩涩涩在线视频| 亚洲图区综合网| 成人性色av| 欧美精品aⅴ在线视频| 亚洲看片一区| 69av成人| 国产白浆在线| 肉色超薄丝袜脚交69xx图片| 国产日产精品一区二区三区四区| 欧美一区二区三区白人| 国内久久婷婷综合| 欧美日韩视频免费看| 九九三级毛片| 最新中文字幕一区| 国产日产欧美视频| 欧美一级大片在线免费观看| 国产精品理论片在线观看| 日韩中出av| 最美情侣韩剧在线播放| 91国内精品视频| 国内露脸中年夫妇交换精品| 91短视频推广| 精品国产亚洲av麻豆| 国产麻豆a毛片| 91制片厂毛片| 一本色道久久综合亚洲精品婷婷| 国产精品久久久999| 最近2019中文字幕第三页视频| 5858s免费视频成人| 五月开心婷婷久久| 亚洲欧美日韩一区二区 | 理论在线观看| 成年网站免费入口在线观看| 亚洲国产成人在人网站天堂| av免费在线不卡| 中日韩精品视频在线观看| 一级片手机在线观看| 国产精品自拍视频在线| 黄色www网站| 一本久道久久综合狠狠爱亚洲精品| 亚洲综合av影视| 国产精品免费视频久久久| 欧美大片在线影院| 久久精品一本久久99精品| 日韩精品福利网站| 亚洲第一视频网| 91精品国产综合久久婷婷香蕉| 精品久久久久久亚洲精品| 亚洲欧美一区二区在线观看| 久久只精品国产| www..com久久爱| 国产成人午夜精品影院观看视频| 日韩电影免费一区| 老司机午夜免费精品视频| 夜夜嗨一区二区| 日韩天天综合| 国产精品夜夜夜| 久久xxxx| 丝袜美腿亚洲一区| 奇米影视在线99精品| 欧美a级理论片| 美国十次了思思久久精品导航| 国产一级久久| 久久一日本道色综合久久| 国产一区二区你懂的| 中文亚洲免费| 青椒成人免费视频| 国产一区二区三区四区在线观看| 精品亚洲国产成人av制服丝袜| 裸体在线国模精品偷拍| 男男视频亚洲欧美| 国产一区二区不卡| 99久久99久久综合| 久久人人97超碰com| 久久午夜老司机| 久久精品视频免费| 一区在线播放视频| 亚洲国产成人av好男人在线观看| 亚洲第一激情av| 色综合网色综合| 欧美嫩在线观看| 亚洲高清不卡av| 亚洲人精品午夜在线观看| 国产亚洲欧美日韩精品| 欧美成人在线免费| 国产成人免费av电影| 成人免费在线视频网址| 国内精品二区| 中文字幕乱码免费| 欧美成人黑人猛交| 天天躁日日躁狠狠躁av| 亚洲 小说 欧美 激情 另类| 99久久婷婷国产综合| 无码无套少妇毛多18pxxxx| 99产精品成人啪免费网站| 波多野结衣久久高清免费| 91看片在线| 最近最好的中文字幕2019免费| 99视频在线观看地址| 678在线观看视频| 国产精品高清乱码在线观看 | 99re6在线视频| 欧美r片在线| 亚洲pron| 国产丝袜在线观看视频| 欧美大电影免费观看| 9国产精品午夜| 精品大片一区二区| 久久综合图片| 99精品偷自拍| 亚洲一区二区三区四区中文字幕| 欧洲国内综合视频| 亚洲偷熟乱区亚洲香蕉av| 91国产精品电影| 国产精品一区二| 超碰10000| 扒开伸进免费视频| 91午夜视频在线观看| 欧美视频久久久| a级免费观看| 免费播放片a高清在线观看| bl视频在线免费观看| 国产精品毛片aⅴ一区二区三区| 精品国产一级毛片| 日本sm残虐另类| 91原创在线视频| 午夜欧美视频在线观看| 精品香蕉在线观看视频一| 久久天堂av综合合色| 国产精品video| 亚洲 日韩 国产第一区| 亚洲一区精品视频在线观看| 亚洲天堂网av在线| 午夜视频1000| 嫩草影院官网| 桃色一区二区| 正在播放日韩欧美一页| 成人免费精品视频| 在线观看一区不卡| 欧美精品aaa| 少妇精品久久久久久久久久| www.偷拍.com| 亚洲 小说区 图片区| 91xx在线观看| 大片免费在线观看| 国产最新精品| eeuss鲁片一区二区三区在线观看| 在线一区二区三区做爰视频网站| 久久久精品免费视频| 久久影院理伦片| 樱花草www在线| 日韩熟女一区二区| www黄色在线观看视频| 污污视频在线看| 第四色成人网| 久久综合色播五月| 精品国产凹凸成av人导航| 国产精品丝袜一区二区三区| 国产精品又粗又长| 久久久久亚洲AV| 91午夜视频| 爱看av在线入口| 黄色日韩在线| 一卡二卡欧美日韩| 欧美另类暴力丝袜| 熟女熟妇伦久久影院毛片一区二区| 四虎影成人精品a片| 午夜小视频在线播放| 女人偷人在线视频| 伊人成综合网yiren22| 2022国产精品视频| 亚洲视频日韩精品| 欧洲亚洲一区| 欧美激情 一区| 久久久久久国产视频| gogo在线观看| 亚洲欧美综合| 一区二区三区精品| 久久久久久国产免费| 男人的天堂狠狠干| 欧美久久久久久久久久久久| 多人欧美交性姿势| xxxxx性欧美特大| 红桃视频国产一区| 亚洲福利视频导航| 欧美中文字幕在线| www.中文字幕在线| 日本视频在线观看免费| 高清av电影| 国产免费av国片精品草莓男男| 日韩综合一区二区| 欧美伊人久久久久久午夜久久久久| 久久久亚洲影院你懂的| 国产一线二线三线女| 特级西西人体高清大胆| xxx欧美老熟| 久久精品女人天堂av免费观看| 日韩电影免费在线看| 日韩欧美中文字幕精品| 精品网站在线看| 精品久久久久久亚洲| 国产国语老龄妇女a片| 无码国精品一区二区免费蜜桃| 美女写真理伦片在线看| 亚洲二区视频| 9191成人精品久久| 欧美精品在线一区| 国产污视频在线看| 中国黄色在线视频| 欧美日韩三级电影在线| 欧美视频精品在线观看| 国产一区视频观看| 欧美激情图片小说| 国产对白在线正在播放| 小处雏高清一区二区三区| 欧美日韩在线另类| 国产精品一 二 三| 精品无码一区二区三区电影桃花| 制服黑丝国产在线| 国产一区二区三区四区三区四| 欧美三级电影一区| 奇米888一区二区三区| 久久精品国产亚洲AV无码男同 | 久久av秘一区二区三区| chinese全程对白| 性生大片免费观看性| 久久久久电影| 欧美精品一级二级| 在线视频一二三区| www.欧美国产| 日韩三区在线| 成人欧美一区二区三区小说| 91精品免费久久久久久久久| 2017亚洲天堂| 一区二区三区区四区播放视频在线观看| 婷婷六月综合| 日韩一区二区在线免费观看| 看全色黄大色大片| 亚洲黄色片视频| 精品欧美日韩精品| 18成人在线视频| 亚洲综合视频1区| 亚洲国产精一区二区三区性色| 国产69久久| 国产精品亚洲视频| 欧美一级免费视频| 欧美a级片免费看| 欧美日韩在线精品一区二区三区激情综| 亚洲永久网站| 色偷偷综合社区| aaaaa黄色片| 妞干网2018| 香蕉久久久久久久av网站| 色悠悠久久久久| 中国特级黄色大片| 日本免费视频www| 久久一区欧美| 欧美激情一区二区三区久久久 | 国产不卡视频| 99精品国产在热久久婷婷| 亚洲网在线观看| 无码人妻丰满熟妇区毛片蜜桃精品| 成年大片免费视频播放二级| 在线观看免费一区二区| 亚洲欧美在线一区| 成年人看片网站| 在线黄色国产电影| 免费观看在线综合色| 98精品国产自产在线观看| 精品一区二区三孕妇视频| 国产精品久久久久一区二区国产| 国产精品12区| 国产久一一精品| 波多野结衣家庭主妇| yw.尤物在线精品视频| 黄色91在线观看| yw.139尤物在线精品视频| 麻豆国产精品一区| 九一在线视频| 91小视频在线免费看| 97se国产在线视频| 国产精品伦一区二区三区| 深夜福利一区二区三区| 欧美电影一区二区| 欧美一级视频在线| 黄色直播在线| 99精品欧美一区二区蜜桃免费| av一本久道久久波多野结衣| 亚洲一区精品在线观看| 视频精品一区二区三区| 日韩精品一区二区三区视频在线观看| 一道本视频在线观看| 国产1区2区3区| 国产精品456| 国模精品一区二区三区| 污视频网站免费观看| 国产成人ay| 日韩在线中文字幕| 精品国产乱码久久久久久鸭王1 | 无码av天堂一区二区三区| 久久久久久久久久久久91| 免费xxxxx网站中文字幕| 国产成人一区在线| 精品一区在线播放| 亚洲成人国产综合| 在线观看一区| 日韩美女av在线免费观看| 久久久久久无码精品大片| 日韩在线视频一区二区三区 | 中文字幕精品一区| 亚洲国产日韩综合一区| 国产精品国产三级国产试看| 99re国产精品| 国产精品日韩久久久久| 不卡av中文字幕| 国产精品久久久久久久免费观看 | 亚洲国产精品成人无久久精品| 亚洲一区二区三区四区| 欧美一区二区女人| 无码熟妇人妻av| 97人人在线视频| 欧美日韩亚洲综合在线| 日韩综合第一页| 天堂av最新在线| 欧美色电影在线| 大黑人交xxx极品hd| 九色porny自拍视频在线播放 | 成人av在线网| 精品国产三级a∨在线| 97视频免费| 欧美激情在线观看视频免费| 黄色网络在线观看| 99免费看香蕉视频| 久久婷婷国产综合国色天香| 精品一区二区成人免费视频| free性欧美1819hd| 国产日韩精品一区二区浪潮av| 一本一道久久a久久精品综合 | 日韩一区二区视频在线| 精品国产导航| 亚洲一区第一页| 国产1区2区3区4区| 中文字幕一区二区三区中文字幕| 日韩麻豆第一页| 国产真实乱人偷精品视频| 久久99成人| 中文在线不卡视频| 国产精品自拍第一页| 亚洲理论电影网| 97在线电影| 乳奴隷乳フ辱| 国产精品一线| 欧美人成在线视频| 国产免费黄色录像| 伊人久久大香线蕉综合热线| 99在线影院| 成年女人午夜毛片免费看| 久久久国产精品不卡| wwwwxxxx日韩| 3344国产永久在线观看视频| 日韩毛片在线看| 一级黄色免费片| 视频一区二区不卡| 黄色a级在线观看| 国产中文字幕在线播放| 欧美色成人综合| 99热精品免费| 不卡在线一区二区| 国产不卡一区二区在线观看| h视频在线免费看| 亚洲精品免费电影| 黄瓜视频污在线观看| 丁香一区二区| 国产精品视频在线播放| 日本爱爱网站| 亚洲免费色视频| 成人片黄网站色大片免费毛片| 韩国女主播一区二区三区 | 日本黄色网址大全| 日本在线视频一区二区三区| 国内精品久久久久久影视8| 亚洲不卡视频在线| 青青在线视频| 亚洲色图国产精品| 亚洲欧美另类一区| 国产.精品.日韩.另类.中文.在线.播放| 精品人妻少妇一区二区| 一区二区三区伦理| 中文字幕亚洲欧美| 一区免费观看| 2022国产精品视频| 中文字幕人妻熟女在线| 久久aimee| 国产精品日韩欧美一区二区| 天海翼一区二区三区四区在线观看 | 成人资源在线|