資料介紹
//Fout=調制頻率控制字*SYSCLK/2的32次方 (SYSCLK=50M) 50M=2faf080 2的32次方=100 000 000 1K=3e8 對應的調制頻率控制字=14f8b
//
#include《reg52.h》
#define uchar unsigned char //這里用“uchar”代替“unsigned char”,“uchar”用來定義無符號字符型數。
#define uint unsigned int //“uint”用來定義無符號整型數。
sbit w_clk1= P1^0; //AD9850_1的將8bit的頻率控制字加載進入數據鎖存器 上升沿有效
sbit fq_ud1=P1^1; //AD9850_1將40bit的控制字加載進入相位累加器 上升沿有效
sbit Rset1= P1^2; //AD9850_1的復位 上升沿有效
sbit w_clk2 =P1^4 ; //AD9850_2的將8bit的頻率控制字加載進入數據鎖存器 上升沿有效
sbit fq_ud2 =P1^5; //AD9850_2的40bit的控制字加載進入相位累加器 上升沿有效
sbit Rset2 =P1^6; //AD9850_1的復位 上升沿有效
sbit DDSLE_1 =P1^7; //AD9850的數據鎖存器控制端 上升沿有效
uchar code AD9850[61]={0,0x01,0x4f,0x8d,0x02,0x9f,0x16,0x03,0xee,0xa1,0x05,0x3e,0x2c,0x06,0x8d,0xb7,
0x07,0xdd,0x42,0x09,0x2c,0xcd,0x0a,0x7c,0x58,0x0b,0xcb,0xe3,0x0d,0x1b,0x6e,
0x0e,0x6a,0xf9,0x0f,0xba,0x84,0x11,0x0a,0x0f,0x12,0x59,0x9a,0x13,0xa9,0x25,
0x14,0xf8,0xb0,0x16,0x48,0x3b,0x17,0x97,0xc6,0x18,0xe7,0x51,0x1a,0x36,0xdc};
uint AD9850_kz=0; //AD9850_1的8bit的頻率控制字
uint AD9850_sc=0; //AD9850_1的8bit的頻率數據
uint AD9850_sccs=0; //AD9850_1的8bit的頻率數據傳輸的次數
/********************************************************************
* 名稱 : Delay()
* 功能 : 延時,延時時間為 10ms * del。這是通過軟件延時,有一定誤差。
* 輸入 : del
* 輸出 : 無
***********************************************************************/
void Delay(uint del)
{
uint i,j;
for(i=0; i《del; i++)
for(j=0; j《1827; j++) //這個是通過軟件仿真得出的數
;
}
/********************************************************************
* 名稱 : Main()
* 功能 : 實現燈的閃爍
* 輸入 : 無
* 輸出 : 無
***********************************************************************/
void AD9850_Rset(void) //AD9850復位
{
Rset1= 0; //AD9850_1的復位 上升沿有效
Rset1= 1;
Rset1= 0;
Rset2= 0; //AD9850_2的復位 上升沿有效
Rset2= 1;
Rset2= 0;
}
void AD98501_kzz(void) //將8bit的頻率控制字加載到AD9850_1
{
w_clk1= 0; //將8bit的頻率控制字加載進入AD9850_1的數據鎖存器 上升沿有效
DDSLE_1=1;
P1=0;
w_clk1= 1;
DDSLE_1=0;
}
void AD98501_scpl(uint AD9850_sc) //AD9850_1的將32bit的頻率數據加載
{
uint s=0; //臨時變量
w_clk1= 0; //將16bit的0的頻率數據加載進入AD9850_1的數據鎖存器 上升沿有效
DDSLE_1=1;
P1=0;
w_clk1= 1;
w_clk1= 0;
w_clk1= 1;
w_clk1=0;
DDSLE_1=0;
for(AD9850_sccs=0;AD9850_sccs《3;AD9850_sccs++)
{
s=AD9850_sccs+ AD9850_sc*3;
w_clk1= 0; //將8bit的頻率數據加載進入AD9850_1的數據鎖存器 上升沿有效
DDSLE_1=1;
P1=AD9850[s];
w_clk1= 1;
DDSLE_1=0;
}
fq_ud1=0;
fq_ud1=1;
AD9850_sc=0;
}
void AD98502_kzz(void) //將8bit的頻率控制字加載到AD9850_2
{
// w_clk2= 0; //將8bit的頻率控制字加載進入AD9850_2的數據鎖存器 上升沿有效
DDSLE_1=1;
// NOP();
// NOP();
P1=0;
// w_clk2=1;
DDSLE_1=0;
}
void AD98502_scpl(uint AD9850_sc) //將 32bit的頻率數據加載到AD9850_2
{
uint s=0; //臨時變量
w_clk2= 0; //將16bit的0的頻率數據加載進入AD9850_2的數據鎖存器 上升沿有效
DDSLE_1=1;
P1=0;
w_clk2= 1;
w_clk2= 0;
w_clk2= 1;
w_clk2=0;
DDSLE_1=0;
for(AD9850_sccs=0;AD9850_sccs《3;AD9850_sccs++)
{
s=AD9850_sccs+ AD9850_sc*3;
w_clk2= 0; //AD9850_1的將8bit的頻率數據加載進入數據鎖存器 上升沿有效
DDSLE_1=1;
P1=s;
w_clk2= 1;
DDSLE_1=0;
}
fq_ud2=0;
fq_ud2=1;
AD9850_sc=0;
}
void Main(void)
{
uint pl=0;
uint x=0;
P0=0;
P1=0;
AD9850_Rset(); //復位AD9850
AD98501_kzz(); //制AD9850控制字
AD98502_kzz();
while(1) //重復輸出1-20KHz的波形
{
for(pl=0;pl《20;pl++)
{
AD98501_scpl(x);
AD98502_scpl(x);
Delay(500);
}
}
}
- 基于DSP控制的UDP協議與IPC的驅動例程 6次下載
- AD9850 FS制革文件
- AD9850/AD9851模塊說明 4次下載
- USB例程指南電子版下載 0次下載
- AD9850 CG格伯文件
- AD9850 FS制革文件
- AD9850信號發(fā)生器模塊說明 31次下載
- AD9850產生掃頻波的程序 62次下載
- AD9850_AD9851_模塊 10次下載
- AD9850學習資料 0次下載
- AD9850Design 33次下載
- 同步多個基于DDS的頻率合成器AD9850 56次下載
- 基于AD9850的倍頻器設計
- 鎖相環(huán)頻率合成器-ad9850激勵
- ad9850應用源程序
- 兩個單片機之間串口通信的例程 5138次閱讀
- 字符型LCD顯示器的應用和例程 933次閱讀
- 使用ULN2003A的步進電機驅動例程 4870次閱讀
- LPC5500_SDK例程:串口DMA發(fā)送+中斷接收 879次閱讀
- 基于STM32開發(fā)板點亮LCD例程 1661次閱讀
- 經驗貼:ADI官方IP核與例程編譯指南 3185次閱讀
- 如何移植FPGA的例程 1731次閱讀
- 使用ZCU102開發(fā)板運行xdpdma例程 1939次閱讀
- 例程中如何使用RTT Viewe 1659次閱讀
- 串口DMA發(fā)送+中斷接收的例程 2506次閱讀
- 配置文件和例程文件的使用 1923次閱讀
- 8位 PIC16 PIC? MCU B類安全軟件庫例程分析 2176次閱讀
- AD9850芯片原理及使用方法總結 5.2w次閱讀
- ad9850中文資料匯總(ad9850引腳圖及功能_內部結構及應用電路) 4.3w次閱讀
- 讀寫24LCxx系列的EEPROM的實例程序 2210次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多