欢迎来到天天文库
浏览记录
ID:54914925
大小:535.50 KB
页数:7页
时间:2020-04-23
《基于AD9854的DDS外围电路设计和程序.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、前段时间非常忙,AD9854这个芯片真是整的我头好疼,虽然在网上也查了大量的资料,不过关于AD9854使用的资料真是少之又少,无奈,只好自己去研究DATASHEET,好在终于实现了,并且通过调试,输出波形稳定!现在把我的设计法出来供大家使用参考。原理图和PCB图为AD9854外围电路!以下是AD9854的控制程序!//#include#include"sst89x5xxrd2.h"#include#defineUSE_KEY0#defineucharunsignedchar#defineuintunsignedint#d
2、efinescharsignedchar#definesintsignedint#defineulongunsignedlongint//须主程序定义的参数/sbitADDR0=P2^0;//sbitADDR1=P2^1;//sbitADDR2=P2^2;//sbitADDR3=P2^3;//sbitADDR4=P2^4;//sbitADDR5=P2^5;///sbitAD_FUD=P3^7;//UP_DATAsbitRUN=P3^2;sbitWR_LOW=P3^5;//WRsbitMASTER_RESET=P3^3;bitbdataF_Flag,OneSec_
3、Flag,Re_Flag,P_Flag;//ucharSecOne;ucharTime_count;ucharAD_Addr;uchardats;ucharTAB_Data[40];////初始化串口。配置定时器//voidinitial_system(){EA=0;TMOD=0x21;//初始化定时器0PCON=0x00;SCON=0x50;TH0=0xdc;//10毫秒定时,采用晶体11.0592定时器0,方式1TL0=0x00;TH1=0xfd;//波特率9600采用晶体11.0592定时器1,方式1TL1=0xfd;TR0=1;//开启定时器0TR1=1
4、;//开启定时器0ET0=1;//时钟0ES=0;//开串口中断EA=1;//使能所有中断}voidTimer0()interrupt1using3{TH0=0xdc;//10毫秒采用晶体11.0592定时器0,方式1TL0=0x00;SecOne++;if(SecOne>200)//计时1秒钟{SecOne=0x00;OneSec_Flag=1;RUN=~RUN;}}//voidAD9854_delay(inttime){inti;for(i=0;i5、aWord(){TAB_Data[0]=0x00;//00HPhaseAdjustRegister#1<13:8>(Bits15,14don'tcare)Phase#1相位为0TAB_Data[1]=0x00;//01HPhaseAdjustRegister#1<7:0>01HTAB_Data[2]=0x00;//02HPhaseAdjustRegister#2<13:8>(Bits15,14don'tcare)Phase#2相位为0TAB_Data[3]=0x00;//03HPhaseAdjustRegister#1<7:0>03H//100MTAB_Data6、[4]=0X31;//FrequencyTuningWord1<47:40>//E0184ATAB_Data[5]=0X1B;//FrequencyTuningWord1<39:32>TAB_Data[6]=0xE6;//FrequencyTuningWord1<31:24>TAB_Data[7]=0xE6;//FrequencyTuningWord1<23:16>TAB_Data[8]=0x53;//FrequencyTuningWord1<15:8>TAB_Data[9]=0x86;//FrequencyTuningWord1<7:0>//FTW2TAB_D7、ata[10]=0x31;//FrequencyTuningWord2<47:40TAB_Data[11]=0x1B;//FrequencyTuningWord2<39:32>TAB_Data[12]=0xE6;//FrequencyTuningWord2<31:24>TAB_Data[13]=0xE6;//FrequencyTuningWord2<23:16>TAB_Data[14]=0x53;//FrequencyTuningWord2<15:8>TAB_Data[15]=0x86;//FrequencyTuningWord2<7:0>//500KHZ//F8、TWTAB_Data[1
5、aWord(){TAB_Data[0]=0x00;//00HPhaseAdjustRegister#1<13:8>(Bits15,14don'tcare)Phase#1相位为0TAB_Data[1]=0x00;//01HPhaseAdjustRegister#1<7:0>01HTAB_Data[2]=0x00;//02HPhaseAdjustRegister#2<13:8>(Bits15,14don'tcare)Phase#2相位为0TAB_Data[3]=0x00;//03HPhaseAdjustRegister#1<7:0>03H//100MTAB_Data
6、[4]=0X31;//FrequencyTuningWord1<47:40>//E0184ATAB_Data[5]=0X1B;//FrequencyTuningWord1<39:32>TAB_Data[6]=0xE6;//FrequencyTuningWord1<31:24>TAB_Data[7]=0xE6;//FrequencyTuningWord1<23:16>TAB_Data[8]=0x53;//FrequencyTuningWord1<15:8>TAB_Data[9]=0x86;//FrequencyTuningWord1<7:0>//FTW2TAB_D
7、ata[10]=0x31;//FrequencyTuningWord2<47:40TAB_Data[11]=0x1B;//FrequencyTuningWord2<39:32>TAB_Data[12]=0xE6;//FrequencyTuningWord2<31:24>TAB_Data[13]=0xE6;//FrequencyTuningWord2<23:16>TAB_Data[14]=0x53;//FrequencyTuningWord2<15:8>TAB_Data[15]=0x86;//FrequencyTuningWord2<7:0>//500KHZ//F
8、TWTAB_Data[1
此文档下载收益归作者所有