📄 ad9851.lst
字号:
C51 COMPILER V7.50 AD9851 05/24/2006 14:01:59 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE AD9851
OBJECT MODULE PLACED IN AD9851.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE AD9851.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #ifndef __AD9851_C__
2 #define __AD9851_C__
3
4 #include "regx51.h"
5
6
7 unsigned long f_freqword;
8 unsigned char f_phaseword;
9
10
11 #define RST_DDS P2_5
12 #define CLK_DDS P2_7
13 #define UPDATE P2_6
14 #define Data_DDS P0
15
16
17 void InitDDSport()
18 {
19 1 RST_DDS = 1;
20 1 RST_DDS = 0;
21 1 Data_DDS = 0;
22 1 CLK_DDS = 0;
23 1 UPDATE = 1;
24 1 }
25
26
27 void SendData()
28 {
29 1 UPDATE=0;
30 1
31 1 Data_DDS = f_phaseword;
32 1 CLK_DDS=0;
33 1 CLK_DDS=1;
34 1
35 1 Data_DDS = f_freqword>>24;
36 1 CLK_DDS = 0;
37 1 CLK_DDS = 1;
38 1 Data_DDS = (f_freqword>>16) & 0xFF;
39 1 CLK_DDS = 0;
40 1 CLK_DDS = 1;
41 1 Data_DDS = (f_freqword>>8) & 0xFF;
42 1 CLK_DDS = 0;
43 1 CLK_DDS = 1;
44 1 Data_DDS = f_freqword & 0xFF;
45 1 CLK_DDS = 0;
46 1 CLK_DDS = 1;
47 1
48 1 UPDATE=1;
49 1 UPDATE=0;
50 1 }
51
52 void SendFreq(double freq)
53 {
54 1 f_freqword=(unsigned long)freq*26.5121438;
55 1 SendData();
C51 COMPILER V7.50 AD9851 05/24/2006 14:01:59 PAGE 2
56 1 }
57
58 void SendPhase(unsigned char phase)
59 {
60 1 f_phaseword = (phase<<3) | 1;
61 1 SendData();
62 1 }
63
64
65 #endif
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 138 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 5 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -