📄 ad9851.h
字号:
#ifndef __AD9851_H__
#define __AD9851_H__
#include "regx51.h"
typedef unsigned char uchar;
unsigned long f_freqword;
unsigned char f_phaseword=0x01;
#define RST_DDS P2_5
#define CLK_DDS P2_7
#define UPDATE P2_6
#define Data_DDS P0
void InitDDSport()
{
RST_DDS = 1;
RST_DDS = 0;
Data_DDS = 0;
CLK_DDS = 0;
UPDATE = 0;
}
void SendData()
{
CLK_DDS=0;
Data_DDS = f_phaseword;
CLK_DDS=1;
CLK_DDS = 0;
Data_DDS = (f_freqword>>24) & 0xFF;
CLK_DDS = 1;
CLK_DDS = 0;
Data_DDS = (f_freqword>>16) & 0xFF;
CLK_DDS = 1;
CLK_DDS = 0;
Data_DDS = (f_freqword>>8) & 0xFF;
CLK_DDS = 1;
CLK_DDS = 0;
Data_DDS = f_freqword & 0xFF;
CLK_DDS = 1;
CLK_DDS = 0;
UPDATE=0;
UPDATE=1;
}
void SendFreq(double freq)
{
f_freqword=(unsigned long)freq*26.5121438;
SendData();
}
/*
void SendPhase(unsigned char phase)
{
f_phaseword = (phase<<3) | 1;
SendData();
}
*/
void SendDefault()
{
f_phaseword = 1;
f_freqword = 1000;
SendFreq(f_freqword);
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -