?? ad9850 dds控制子程序 - dds-鎖相環(huán) - radiobook dds鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸pldfpgavhdl免費虛擬主機 - powered by discuz!.htm
字號:
?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0045)http://www.radiobook.cn/viewthread.php?tid=16 -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>AD9850 DDS控制子程序 - DDS/鎖相環(huán) - Radiobook DDS|鎖相環(huán)|頻率合成|大學生電子設計大賽|中文器件資料下載|調(diào)頻發(fā)射|單片機|無線數(shù)據(jù)傳輸|PLD|FPGA|VHDL|免費虛擬主機 - Powered by Discuz!</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8">
<META
content=dds,DDS,頻率合成,中文器件資料下載,鎖相環(huán),電子設計,電子設計大賽,大學生電子設計大賽,調(diào)頻發(fā)射,無線,無線數(shù)據(jù)傳輸,單片機,PLD,FPGA,VHDL,下載,資源下載,免費虛擬主機
name=keywords>
<META
content=" Radiobook 經(jīng)常做其他的單片機實驗,還沒做過DDS的實驗。最近打算寫個程序試驗一下。&lt;br /&gt; &lt;br /&gt; 看了N久datasheet和別人的例子,就開始寫程序了。可到了控制字的計算,發(fā)現(xiàn)還 ... - Discuz! Board"
name=description>
<META content="MSHTML 6.00.2900.3132" name=GENERATOR>
<META content="Discuz! Team and Comsenz UI Team" name=author>
<META content="2001-2007 Comsenz Inc." name=copyright>
<META content=True name=MSSmartTagsPreventParsing>
<META http-equiv=MSThemeCompatible content=Yes><LINK title=Radiobook
href="http://www.radiobook.cn/archiver/" rel=archives><LINK id=css
href="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/style_1.css"
type=text/css rel=stylesheet>
<SCRIPT type=text/javascript>var IMGDIR = 'images/default';var SMDIR = 'images/smilies';var attackevasive = '0';</SCRIPT>
<SCRIPT
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/common.js"
type=text/javascript></SCRIPT>
<SCRIPT
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/menu.js"
type=text/javascript></SCRIPT>
<SCRIPT
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/ajax.js"
type=text/javascript></SCRIPT>
</HEAD>
<BODY onkeydown="if(event.keyCode==27) return false;">
<DIV id=append_parent></DIV>
<DIV id=ajaxwaitid></DIV>
<DIV class=wrap>
<DIV id=header>
<H2><A title=Radiobook href="http://www.radiobook.cn/index.php"><IMG
alt=Radiobook
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/logo.gif"
border=0></A></H2>
<DIV id=ad_headerbanner></DIV></DIV>
<DIV id=menu>
<UL>
<LI><A href="http://www.radiobook.cn/register.php">注冊</A> </LI>
<LI><A href="http://www.radiobook.cn/logging.php?action=login">登錄</A> </LI>
<LI><A href="http://www.radiobook.cn/member.php?action=list">會員</A> </LI>
<LI class=dropmenu id=stats onmouseover=showMenu(this.id)><A
href="http://www.radiobook.cn/stats.php">統(tǒng)計</A> </LI>
<LI><A href="http://www.radiobook.cn/faq.php">幫助</A> </LI></UL></DIV>
<SCRIPT
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/viewthread.js"
type=text/javascript></SCRIPT>
<SCRIPT type=text/javascript>zoomstatus = parseInt(1);</SCRIPT>
<DIV id=foruminfo>
<DIV id=nav><A href="http://www.radiobook.cn/index.php">Radiobook</A> ? <A
href="http://www.radiobook.cn/forumdisplay.php?fid=13">DDS/鎖相環(huán)</A> ? AD9850
DDS控制子程序 </DIV></DIV>
<DIV id=ad_text></DIV>
<DIV class=pages_btns>
<DIV class=threadflow><A
href="http://www.radiobook.cn/redirect.php?fid=13&tid=16&goto=nextoldset">??
上一主題</A> | <A
href="http://www.radiobook.cn/redirect.php?fid=13&tid=16&goto=nextnewset">下一主題
??</A></DIV><SPAN class=postbtn id=newspecial
onmouseover="$('newspecial').id = 'newspecialtmp';this.id = 'newspecial';showMenu(this.id)"><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra="><IMG
title=發(fā)新話題 alt=發(fā)新話題
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/newtopic.gif"
border=0></A></SPAN> <SPAN class=replybtn><A
href="http://www.radiobook.cn/post.php?action=reply&fid=13&tid=16&extra="><IMG
alt=""
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/reply.gif"
border=0></A></SPAN></DIV>
<UL class="popupmenu_popup newspecialmenu" id=newspecial_menu
style="DISPLAY: none">
<LI><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=">發(fā)新話題</A>
</LI>
<LI class=poll><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=&special=1">投票</A>
</LI>
<LI class=trade><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=&special=2">商品</A>
</LI>
<LI class=reward><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=&special=3">懸賞</A>
</LI>
<LI class=activity><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=&special=4">活動</A>
</LI>
<LI class=debate><A
href="http://www.radiobook.cn/post.php?action=newthread&fid=13&extra=&special=5">辯論</A>
</LI></UL>
<SCRIPT type=text/javascript>function fastreply(subject) { if($('postform')) { $('postform').subject.value = subject; $('postform').message.focus(); }}</SCRIPT>
<FORM name=modactions method=post><INPUT type=hidden value=91b4d567
name=formhash>
<DIV class="mainbox viewthread"><SPAN class=headactions><A
href="http://www.radiobook.cn/viewthread.php?action=printable&tid=16"
target=_blank>打印</A> </SPAN>
<H1>AD9850 DDS控制子程序 </H1><INS><A
href="http://www.radiobook.cn/space/index.php?action/viewspace/itemid/366"
target=_blank>本帖已經(jīng)被作者加入個人空間</A> </INS>
<TABLE id=pid22 cellSpacing=0 cellPadding=0 summary=pid22>
<TBODY>
<TR>
<TD class=postauthor><CITE><A class=dropmenu id=userinfo22
onmouseover=showMenu(this.id)
href="http://www.radiobook.cn/space.php?uid=1"
target=_blank>admin</A></CITE>
<DIV class=avatar><IMG height=120 alt=""
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/1.gif"
width=116 border=0></DIV>
<P><EM>管理員</EM></P>
<P><IMG alt="Rank: 9"
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/star_level3.gif"><IMG
alt="Rank: 9"
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/star_level3.gif"><IMG
alt="Rank: 9"
src="AD9850 DDS控制子程序 - DDS-鎖相環(huán) - Radiobook DDS鎖相環(huán)頻率合成大學生電子設計大賽中文器件資料下載調(diào)頻發(fā)射單片機無線數(shù)據(jù)傳輸PLDFPGAVHDL免費虛擬主機 - Powered by Discuz!.files/star_level1.gif"></P>
<UL>
<LI class=space><A title=admin的個人空間
href="http://www.radiobook.cn/space.php?uid=1" target=_blank>個人空間</A>
</LI>
<LI class=pm><A id=ajax_uid_22
onclick="ajaxmenu(event, this.id, 9000000, null, 0)"
href="http://www.radiobook.cn/pm.php?action=send&uid=1"
target=_blank>發(fā)短消息</A> </LI>
<LI class=buddy><A id=ajax_buddy_0
onclick="ajaxmenu(event, this.id, null, 0)"
href="http://www.radiobook.cn/memcp.php?action=buddylist&newbuddyid=1&buddysubmit=yes"
target=_blank>加為好友</A> </LI>
<LI class=offline>當前離線 </LI></UL></TD>
<TD class=postcontent>
<DIV class=postinfo><STRONG title=復制帖子鏈接到剪貼板
onclick="setcopy('http://www.radiobook.cn/viewthread.php?tid=16&page=1#pid22', '帖子鏈接已經(jīng)復制到剪貼板')">1<SUP>#</SUP></STRONG>
<EM onclick="$('postmessage_22').className='t_bigfont'">大</EM> <EM
onclick="$('postmessage_22').className='t_msgfont'">中</EM> <EM
onclick="$('postmessage_22').className='t_smallfont'">小</EM> 發(fā)表于 2007-4-3
16:03 <A
href="http://www.radiobook.cn/viewthread.php?tid=16&page=1&authorid=1">只看該作者</A>
</DIV>
<DIV id=ad_thread2_0></DIV>
<DIV class="postmessage defaultpost">
<DIV id=ad_thread3_0></DIV>
<DIV id=ad_thread4_0></DIV>
<H2>AD9850 DDS控制子程序</H2>
<DIV class=t_msgfont
id=postmessage_22>經(jīng)常做其他的單片機實驗,還沒做過DDS的實驗。最近打算寫個程序試驗一下。<BR><BR>看了N久datasheet和別人的例子,就開始寫程序了。可到了控制字的計算,發(fā)現(xiàn)還真是麻煩。由于我是用C寫程序,所以一開始定義了long型變量,讓它算,幾行代碼就解決了。不過一想,單片機這樣算也太慢了吧,要是一轉(zhuǎn)編碼器,頻率變化幾十次上百次,單片機還不累死了<BR><BR>于是想換個查表方式吧。搞了一上午,把算法搞好,表也算好做出來了,一編譯,暈!長出了好幾百字節(jié)(這其中包括表本身約200字節(jié),再加上算法中多句的加法代碼),看來2051里面別想放了。
<BR><BR>看來,魚和熊掌,不可兼得。要速度,代碼量就大。要代碼精簡,速度就慢。這大概就是單片機的真諦吧。<BR><BR>我的查表算法思路是這樣的<BR>:<BR>1、構(gòu)造N個二維數(shù)組(N=你需要輸入的最大頻率值位數(shù),例如你需要精確到10HZ,最高30MHZ,那么就有10M位、1M位、100K位、10K位、1K位、100HZ位、10HZ位,共7位,所以N=7)。<BR>2、根據(jù)你所用的芯片型號,和晶振頻率,計算出每個頻率位0-9時的控制字。<BR>3、使用時,把你頻率的每一位控制字,查表讀出,并相加(特別需要注意進位也需要處理)。<BR>4、把加出的4字節(jié)控制字,送DDS。<BR><BR>此方法,理論最大控制字誤差為N。一般9851或9850DDS,常用的晶振頻率值條件下,此誤差實際表現(xiàn)在頻率上時,小于1HZ的1到2個數(shù)量級。<BR><BR>查表部分具體程序(尚未進行硬件測試)<BR><BR>程序代碼<BR><BR><BR>/*******************************************<BR>
AD9850
DDS控制子程序<BR>********************************************<BR>編寫:BG4UVR<BR>描述:
MCS51單片機控制AD9850/AD9851子程序。<BR>
提供如下5個常用DDS控制函數(shù)。例子中<BR>
DDS控制字表的DDS型號為AD9850,晶振<BR>
為16MHZ。<BR>注意:
使用前請修改程序內(nèi)相應硬件端口<BR>********************************************/<BR>void
dds_reset(void); //DDS主復位程序<BR>void
dds_serialmode(void); //DDS串行方式設置<BR>void
dds_set(void);
//DDS設置數(shù)據(jù)發(fā)送<BR>void fre2word(void);
//DDS控制字計算<BR>void freupdata(void);
//DDS頻率輸出更新<BR>/*******************************************/<BR><BR>//其他函數(shù)此處省略,只留下了表的結(jié)構(gòu)和控制字計算部分……<BR><BR>/********************************************/<BR>//控制字表,DDS=9850,晶振=16MHZ<BR>
//word=0x100000000*fre/16000000;<BR>/********************************************/<BR>unsigned
char code dds_word_10mhz[2][4]={<BR>
0x00,0x00,0x00,0x00,<BR>
0x00,0x00,0x00,0xa0<BR>};<BR><BR>unsigned char code
dds_word_1mhz[10][4]={<BR> 0x00,0x00,0x00,0x00,<BR>
0x00,0x00,0x00,0x10,<BR>
0x00,0x00,0x00,0x20,<BR> 0x00,0x00,0x00,0x30,<BR>
0x00,0x00,0x00,0x40,<BR>
0x00,0x00,0x00,0x50,<BR> 0x00,0x00,0x00,0x60,<BR>
0x00,0x00,0x00,0x70,<BR>
0x00,0x00,0x00,0x80,<BR>
0x00,0x00,0x00,0x90<BR>};<BR>unsigned char code
dds_word_100khz[10][4]={<BR> 0x00,0x00,0x00,0x00,
//0<BR>
0x99,0x99,0x99,0x01, //1<BR>
0x33,0x33,0x33,0x03,
//2<BR> 0xcc,0xcc,0xcc,0x04,
//3<BR>
0x66,0x66,0x66,0x06, //4<BR>
0x00,0x00,0x00,0x08,
//5<BR> 0x99,0x99,0x99,0x09,
//6<BR>
0x33,0x33,0x33,0x0b, //7<BR>
0xcc,0xcc,0xcc,0x0c,
//8<BR> 0x66,0x66,0x66,0x0e
//9<BR>};<BR>unsigned char
code dds_word_10khz[10][4]={<BR> 0x00,0x00,0x00,0x00,
//0<BR>
0xc2,0xf5,0x28,0x00, //1<BR>
0x85,0xeb,0x51,0x00,
//2<BR> 0x47,0xe1,0x7a,0x00,
//3<BR>
0x0a,0xd7,0xa3,0x00, //4<BR>
0xcc,0xcc,0xcc,0x00,
//5<BR> 0x8f,0xc2,0xf5,0x00,
//6<BR>
0x51,0xb8,0x1e,0x01, //7<BR>
0x14,0xae,0x47,0x01,
//8<BR> 0xd7,0xa3,0x70,0x01,
//9<BR>};<BR>unsigned char code
dds_word_1khz[10][3]={<BR> 0x00,0x00,0x00,
//0<BR> 0x93,0x18,0x04,
//1<BR> 0x26,0x31,0x08,
//2<BR> 0xba,0x49,0x0c,
//3<BR> 0x4d,0x62,0x10,
//4<BR> 0xe1,0x7a,0x14,
//5<BR> 0x74,0x93,0x18,
//6<BR> 0x08,0xac,0x1c,
//7<BR> 0x9b,0xc4,0x20,
//8<BR> 0x2f,0xdd,0x24,
//9<BR>};<BR>unsigned char code
dds_word_100hz[10][3]={<BR> 0x00,0x00,0x00,
//0<BR> 0xdb,0x68,0x00,
//1<BR> 0xb7,0xd1,0x00,
//2<BR> 0x92,0x3a,0x01,
//3<BR> 0x6e,0xa3,0x01,
//4<BR> 0x49,0x0c,0x02,
//5<BR> 0x25,0x75,0x02,
//6<BR> 0x00,0xde,0x02,
//7<BR> 0xdc,0x46,0x03,
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -