tst.c
来自「凌阳单片机控制的DDS芯片AD9851(串行和并行控制方式)」· C语言 代码 · 共 53 行
C
53 行
#include"spce061a.h"
#define w_clk 0x0100 //控制字载入时钟,上升沿
#define FQ_UD 0x0200 //频率转换控制,上升沿
#define RESET 0x0400 //复位
/*typedef struct
{ unsigned int W0;
unsigned int W1;
unsigned int W2;
unsigned int W3;
unsigned int W4;
}ctrl_word;
ctrl_word *cmd_word;*/
main()
{
/*cmd_word->W0=0x0009;
cmd_word->W1=0x000e;
cmd_word->W2=0x0038;
cmd_word->W3=0x00e3;
cmd_word->W4=0x008e;*/
*P_SystemClock=0x0080;
*P_IOA_Dir=0xffff;
*P_IOA_Attrib=0xffff;
*P_IOA_Data=0x0000;
*P_IOA_Data=*P_IOA_Data|RESET;
delay(10);
*P_IOA_Data=0xffff;
while(1)
{
*P_IOA_Data=0x0009;//W0
*P_IOA_Data|=w_clk;
delay(2);
*P_IOA_Data=0x000e;//w1
*P_IOA_Data|=w_clk;
delay(2);
*P_IOA_Data=0x0038;//w2
*P_IOA_Data|=w_clk;
delay(2);
*P_IOA_Data=0x00e3;//w3
*P_IOA_Data|=w_clk;
delay(2);
*P_IOA_Data=0x008e;//w4
*P_IOA_Data|=w_clk;
delay(2);
*P_IOA_Data=FQ_UD;
delay(10);
*P_Watchdog_Clear=0x0001;
}
}
void delay(unsigned int time)
{
while(time--)
*P_Watchdog_Clear=0x0001;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?