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

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

AD9850(DDS)驅動程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2011年09月18日   【字體:
//串行時序

#include <reg51.h>
sbit ad9850_fq_up    =P1^1;  //接ad9850的fq_up腳
sbit ad9850_bit_data =P1^2;  //接ad9850的D7腳
sbit ad9850_w_clk    =P1^3;  //接ad9850的w_clk腳
//***************************************************//
//          向ad9850中寫命令(串口)             //
//---------------------------------------------------//
void ad9850_wr_com(unsigned char w, double frequence)
{
unsigned char i;
unsigned long int M;
//計算頻率值
frequence=frequence*85.89934592+0.5; //適合50M晶振  f=fclk*M/2^32即M=f*2^32/fclk
M=frequence;        //頻率控制字
ad9850_w_clk=0;       //初始化 
ad9850_fq_up=0;

//寫頻率控制字
for(i=0;i<32;i++)       //連續寫入32位頻率控制字
{
ad9850_w_clk=0;
ad9850_bit_data=(bit)((M>>i)&0x0001);
ad9850_w_clk=1;         //上升沿寫入數據
}
//寫相位控制字  
for(i=0;i<8;i++)        //需要w<=32  相位有180、90、45、22.5、11.25以及它們的組合。
{
ad9850_w_clk=0;
ad9850_bit_data=(bit)(w>>i)&0x01;
ad9850_w_clk=1;         //上升沿寫入數據
}
//移入始能 
ad9850_fq_up=0;       
ad9850_fq_up=1;         //上升沿將40位數一次性打入數據寄存器
}
void main()
{
ad9850_wr_com(0,1000000);    
while(1);
}

//該芯片使用簡單,新手可能困惑于相位,如無特殊情況相位設置為0即可,如需參考不明白處可留言。
關閉窗口

相關文章

主站蜘蛛池模板: 久久成人av| 日韩电影中文字幕 | 热99视频| 成人精品免费视频 | 97精品超碰一区二区三区 | 99热在线播放 | 奇米超碰| 国产一区二区不卡 | 青青草在线播放 | 成人网av | 中国一级特黄真人毛片 | 九色在线观看 | 91麻豆蜜桃一区二区三区 | 久久aⅴ乱码一区二区三区 亚洲欧美综合精品另类天天更新 | 欧美日韩在线免费 | 一级全黄视频 | 欧美一区在线视频 | 久久精品久久久 | 一级片免费视频 | 国产欧美精品区一区二区三区 | 亚洲综合大片69999 | www.av在线| 在线成人免费视频 | 高清久久| 亚洲不卡视频 | 日韩在线视频免费观看 | 国产精品1区2区3区 一区中文字幕 | 古装三级在线播放 | 中文字幕在线观看一区 | 爱爱小视频 | 久久一视频 | 欧美二区在线 | 中文字幕在线免费观看 | 鸳鸯谱在线观看高清 | 国产一区二区三区在线免费观看 | 成人影院午夜 | 日韩在线视频免费观看 | www.夜夜骑.com| 免费观看av| 一级片在线观看 | 国产免费观看一区 |