久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7811|回復: 15
打印 上一主題 下一主題
收起左側

AD9850與單片機波形生成程序及設計資料下載

  [復制鏈接]
跳轉到指定樓層
樓主


AD9850/AD9851模塊說明

原理圖:

概述
=================================================
AD9850/AD9851模塊是采用ADI應用最廣泛的DDSAD9850AD9851)制作的模塊。ADI的性能就不用多說了。模塊主要參考AD9850AD9851的資料做的。
  主要功能特點:
  *  模塊能夠輸出正弦波和方波,2個正弦波和2個方波輸出。

AD9850: 0-40MHz

AD9851: 0-70MHz

頻率在20-30MHz后諧波越來越大,波形會越來越不干凈。
方波:     0-1MHz
  *  采用70MHz的低通濾波器,使波形的SN比更好
  *  比較器的基準輸入端電壓由可變電阻產生,調節該電阻可以得到不同的占空比方波
    注:在輸出正弦波的情況下,接線到方波輸出的IO口,直接調節藍色的電位器可輸出方波
  * AD9850模塊采用125MHz的有源晶振,AD9851模塊采用30MHZ的有源晶振
AD9850AD9851主要區別
  *  AD9850的時鐘頻率最高125MHz,AD9851的時鐘頻率最高180MHz。輸出最高頻率AD9851要比AD9850高。
  * AD9850沒有6倍頻,AD9851有

功能框圖============================================================
1:下載對應的HEX程序
   見AD9850_1_V4_C程序文件夾
   OUT1和OUT2端能測試到對應輸出1KHz信號。如需測試方波,調節可變電位器,可在方波1和方波2端測試到方波。

單片機源程序如下:
  1. //***************************************************//
  2. //函數1:           ad9851_reset()                    //
  3. //函數2:           ad9851_reset_serial()             //
  4. //函數3:           ad9851_wr_parrel(unsigned char w0,double frequence)//
  5. //函數4:           ad9851_wr_serial(unsigned char w0,double frequence)//
  6. //版本:              V1.1                            //
  7. //***************************************************//
  8. //                  子程序說明                       //
  9. //***************************************************//
  10. //函數1:  ad9851_reset()
  11. //        復位ad9851,之后為并口寫入模式        
  12. //函數2:  ad9851_reset_serial()
  13. //        復位ad9851,之后為串口寫入模式
  14. //函數3:  ad9851_wr_parrel(unsigned char w0,double frequence)
  15. //        并口寫ad9851數據,w0為ad9851中w0的數據,frequence
  16. //        為寫入的頻率        
  17. //函數4:  ad9851_wr_serial(unsigned char w0,double frequence)
  18. //        串口寫ad9851數據,w0為ad9851中w0的數據,frequence
  19. //        為寫入的頻率        
  20. //需定義的位:
  21.          //ad9851_w_clk    ;
  22.          //ad9851_fq_up    ;
  23.          //ad9851_rest     ;
  24.          //ad9851_bit_data ;
  25. //例:
  26.          //sbit ad9851_w_clk    =P2^2;
  27.          //sbit ad9851_fq_up    =P2^1;
  28.          //sbit ad9851_rest     =P2^0;
  29.          //sbit ad9851_bit_data =P1^7;
  30. //***************************************************//
  31. //                 寫數據說明                        //
  32. //***************************************************//
  33. //寫數據例:
  34. //       ad9851_reset()
  35. //       wr_lcd02_data(unsigned char x)
  36. //       ad9851_wr_parrel(0x01,1000)
  37. //       ad9851_wr_serial(0x01,1000)
  38. //***************************************************//
  39. //---------------------------------------------------//
  40. //                   程序                            //
  41. //---------------------------------------------------//
  42. # include <reg51.h>
  43. # include <stdio.h>
  44. # include <intrins.h>
  45. sbit ad9851_w_clk    =P2^2;  //P2.2口接AD9851的w_clk腳/PIN7
  46. sbit ad9851_fq_up    =P2^1;  //P2.1口接AD9851的fq_up腳/PIN8
  47. sbit ad9851_rest     =P2^0;  //P2.0口接AD9851的rest腳/PIN12
  48. sbit ad9851_bit_data =P1^7;  //P1.7口接AD9851的D7腳/PIN25
  49. //P1為8位數據口
  50. //***************************************************//
  51. //              ad9851復位(并口模式)                 //
  52. //---------------------------------------------------//
  53. void ad9851_reset()
  54. {
  55. ad9851_w_clk=0;
  56. ad9851_fq_up=0;
  57. //rest信號
  58. ad9851_rest=0;
  59. ad9851_rest=1;
  60. ad9851_rest=0;
  61. }
  62. //***************************************************//
  63. //              ad9851復位(并口模式)                 //
  64. //---------------------------------------------------//
  65. void ad9851_reset_serial()
  66. {
  67. ad9851_w_clk=0;
  68. ad9851_fq_up=0;
  69. //rest信號
  70. ad9851_rest=0;
  71. ad9851_rest=1;
  72. ad9851_rest=0;
  73. //w_clk信號
  74. ad9851_w_clk=0;
  75. ad9851_w_clk=1;
  76. ad9851_w_clk=0;
  77. //fq_up信號
  78. ad9851_fq_up=0;
  79. ad9851_fq_up=1;
  80. ad9851_fq_up=0;
  81. }
  82. //***************************************************//
  83. //          向ad9851中寫命令與數據(并口)             //
  84. //---------------------------------------------------//
  85. void ad9851_wr_parrel(unsigned char w0,double frequence)
  86. {
  87. unsigned char w;
  88. long int y;
  89. double x;
  90. //計算頻率的HEX值
  91. x=4294967295/180;//適合180M晶振/180為最終時鐘頻率(或30M六倍頻)
  92. //如果時鐘頻率不為180MHZ,修改該處的頻率值,單位MHz !!!
  93. frequence=frequence/1000000;
  94. frequence=frequence*x;
  95. y=frequence;
  96. //寫w0數據
  97. w=w0;   
  98. P1=w;      //w0
  99. ad9851_w_clk=1;
  100. ad9851_w_clk=0;
  101. //寫w1數據
  102. w=(y>>24);
  103. P1=w;      //w1
  104. ad9851_w_clk=1;
  105. ad9851_w_clk=0;
  106. //寫w2數據
  107. w=(y>>16);
  108. P1=w;      //w2
  109. ad9851_w_clk=1;
  110. ad9851_w_clk=0;
  111. //寫w3數據
  112. w=(y>>8);
  113. P1=w;      //w3
  114. ad9851_w_clk=1;
  115. ad9851_w_clk=0;
  116. //寫w4數據
  117. w=(y>>=0);
  118. P1=w;      //w4
  119. ad9851_w_clk=1;
  120. ad9851_w_clk=0;
  121. //移入始能
  122. ad9851_fq_up=1;
  123. ad9851_fq_up=0;
  124. }
  125. //***************************************************//
  126. //          向ad9851中寫命令與數據(串口)             //
  127. //---------------------------------------------------//
  128. void ad9851_wr_serial(unsigned char w0,double frequence)
  129. {
  130. unsigned char i,w;
  131. long int y;
  132. double x;
  133. //計算頻率的HEX值
  134. x=4294967295/180;//適合180M晶振/180為最終時鐘頻率(或30M六倍頻)
  135. //如果時鐘頻率不為180MHZ,修改該處的頻率值,單位MHz  !!!
  136. frequence=frequence/1000000;
  137. frequence=frequence*x;
  138. y=frequence;
  139. //寫w4數據
  140. w=(y>>=0);
  141. for(i=0;i<8;i++)
  142. {
  143. ad9851_bit_data=(w>>i)&0x01;
  144. ad9851_w_clk=1;
  145. ad9851_w_clk=0;
  146. }
  147. //寫w3數據
  148. w=(y>>8);
  149. for(i=0;i<8;i++)
  150. {
  151. ad9851_bit_data=(w>>i)&0x01;
  152. ad9851_w_clk=1;
  153. ad9851_w_clk=0;
  154. }
  155. //寫w2數據
  156. w=(y>>16);
  157. for(i=0;i<8;i++)
  158. {
  159. ad9851_bit_data=(w>>i)&0x01;
  160. ad9851_w_clk=1;
  161. ad9851_w_clk=0;
  162. }
  163. //寫w1數據
  164. w=(y>>24);
  165. for(i=0;i<8;i++)
  166. {
  167. ad9851_bit_data=(w>>i)&0x01;
  168. ad9851_w_clk=1;
  169. ad9851_w_clk=0;
  170. }
  171. //寫w0數據
  172. w=w0;   
  173. for(i=0;i<8;i++)
  174. {
  175. ad9851_bit_data=(w>>i)&0x01;
  176. ad9851_w_clk=1;
  177. ad9851_w_clk=0;
  178. }
  179. //移入始能
  180. ad9851_fq_up=1;
  181. ad9851_fq_up=0;
  182. }
  183. //***************************************************//
  184. //                   測試程序1000Hz                  //
  185. //---------------------------------------------------//
  186. main()
  187. {
  188. P0=0x00;
  189. P1=0x00;
  190. P2=0x00;
  191. P3=0x00;
  192. //---------------------------------------------------//
  193. ……………………

  194. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
AD9850模塊資料 .rar (6.03 MB, 下載次數: 186)


評分

參與人數 3黑幣 +60 收起 理由
liaoyx0214 + 5 回帖助人的獎勵!
李文健 + 5
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:1 發表于 2017-11-15 04:46 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

板凳
ID:201936 發表于 2017-11-15 08:33
下載后卡巴斯基掃描顯示有木馬

地板
ID:508200 發表于 2019-4-9 20:04 | 只看該作者
非常感謝
回復

使用道具 舉報

5#
ID:98926 發表于 2019-5-7 21:59 | 只看該作者
正好可以
學習學習
回復

使用道具 舉報

6#
ID:530672 發表于 2019-5-8 20:07 | 只看該作者
看著很齊全,下載看看。希望能解決問題。
回復

使用道具 舉報

7#
ID:419064 發表于 2019-5-13 09:29 | 只看該作者
AD9850與單片機波形生成程序,多謝提供寶貴資料,手頭上正好有個吃灰的AD9850的模塊,有空研究一下。
回復

使用道具 舉報

8#
ID:417483 發表于 2019-7-13 13:29 | 只看該作者
內容精致
回復

使用道具 舉報

9#
ID:596958 發表于 2019-8-7 16:04 | 只看該作者
知秋 2019/8/7 15:43:02 我現在需要一份STC15單片機和AD9850生成正弦波的程序
回復

使用道具 舉報

10#
ID:439556 發表于 2019-8-8 08:20 | 只看該作者
這個并行數據引腳接線是怎么接的?我的為什么不合適
回復

使用道具 舉報

11#
ID:598509 發表于 2019-8-9 17:58 | 只看該作者

非常感謝
回復

使用道具 舉報

12#
ID:511461 發表于 2019-9-21 21:07 | 只看該作者
那個D0~D7怎么接線的
回復

使用道具 舉報

13#
ID:651278 發表于 2019-11-28 01:08 | 只看該作者
好資料
回復

使用道具 舉報

14#
ID:620269 發表于 2019-12-12 17:44 | 只看該作者
可以實現頻率程控嗎?輸出幅值可以調節嗎?
回復

使用道具 舉報

15#
ID:649767 發表于 2019-12-14 16:43 | 只看該作者
請問是串行口嗎
回復

使用道具 舉報

16#
ID:696066 發表于 2020-2-21 13:48 | 只看該作者
好資料
回復

使用道具 舉報

17#
ID:767388 發表于 2020-6-2 12:15 | 只看該作者
好資料
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产日韩欧美激情 | 国产美女在线观看 | 国产成人精品午夜 | 久久久久久九九九九 | 国产精品成av人在线视午夜片 | 国产精品一区二区欧美黑人喷潮水 | 日韩欧美国产一区二区 | 视频一区在线观看 | 国产精品久久久久久久久久了 | 亚洲国产日韩一区 | 午夜免费看 | 91精产国品一二三区 | 色资源在线观看 | 欧美日韩一区二区电影 | av一二三区 | 狠狠干天天干 | 国产一区二区免费 | 国产日韩精品视频 | 国产精品久久久久久久7777 | 精品无码久久久久久国产 | 性xxxxx | 99精品亚洲国产精品久久不卡 | 欧美日韩大片 | 人成久久| 精品欧美黑人一区二区三区 | 久久久久久黄 | 国产精品精品视频一区二区三区 | 天堂亚洲 | 久久久做 | 国产1区2区在线观看 | 久久久国产一区二区三区 | av在线免费观看网址 | 久久精品国产一区二区电影 | www.亚洲视频.com | 国产三区精品 | 欧美二区乱c黑人 | 97福利在线 | 91精品国产乱码久久久久久久 | 日本午夜免费福利视频 | 久久久国产一区二区三区 | 日韩免费在线 |