📄 mypro.lst
字号:
C51 COMPILER V8.02 MYPRO 11/30/2007 13:29:07 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MYPRO
OBJECT MODULE PLACED IN mypro.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE mypro.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*====================================================================
2 *为提高程序的可读性编写的程序模板*
3 *文件名:mypro.c *
4 *黑马*
5 ===================================================================*/
6
7
8 /*======================================================================
9 包含头文件
10 ======================================================================*/
11 #include<reg51.h>
12 #include "defs_c51_heima.h"
13
14 /*=======================================================================
15 常数定义
16 =======================================================================*/
17 #define TIME_1MS 49 // delay 1ms for 2051
18 #define TIME_1S 49000 // delay 1s for 2051
19
20
21 /*=======================================================================
22 端口定义
23 ======================================================================*/
24 sbit SCLK = P1^3;
25 sbit SDATA= P1^2;
26 sbit FSYNC= P1^1;
27
28 /*========================================================================
29 (指令)
30 ========================================================================*/
31 #define Wrt_16_Pha 0x0000 //写16位相位到DATA REGISTER C3 C2 C1 C0 =0000
32 #define Wrt_8_Pha 0x1000 //写8位相位到DEFER REGISTER C3 C3 C1 C1 =0001
33 #define Wrt_16_Fre 0x2000 //写16位频率到DEFER REGISTER C3 C2 C1 C0 =0010
34 #define Wrt_8_Fre 0x3000 //写8位频率到DATA REGISTER C3 C2 C1 C0 =0011
35 #define Sel_Pha_Reg 0x4000 //D10 D9用来选择相位寄存器 C3 C2 C1 C0 =0100
36 #define Sel_Fre_Reg 0x5000 //D11 用来选择频率寄存器 C3 C2 C1 C0 =0101
37 #define Sel_Fre_Pha 0x6000 //D10 D9选择相位、D11选择频率 C3 C2 C1 C0 =0110
38 #define Reserved 0x7000 //用来测试 C3 C2 C1 C0 =0111
39 #define CmdSynSel 0x8000 //同步,数据源选择方式 C3 C2 C1 C0 =1000
40 #define CmdResClr 0xC000 //复位寄存器, C3 C2 C1 C0 =1100
41
42
43 /*==========================================================================
44 (地址)
45 ==========================================================================*/
46 #define Adr_Fr0_LL 0x0000 //频率寄存器0的7~0位寄存器地址
47 #define Adr_Fr0_LH 0x0100 //频率寄存器0的15~8位寄存器地址
48 #define Adr_Fr0_HL 0x0200 //频率寄存器0的23~16位寄存器地址
49 #define Adr_Fr0_HH 0x0300 //频率寄存器0的31~24位寄存器地址
50 #define Adr_Fr1_LL 0x0400
51 #define Adr_Fr1_LH 0x0500
52 #define Adr_Fr1_HL 0x0600
53 #define Adr_Fr1_HH 0x0700
54 #define Adr_Ph0_L 0x0800 //相位寄存器0的7~0位寄存器地址
55 #define Adr_Ph0_H 0x0900 //相位寄存器0的15~8位寄存器地址
C51 COMPILER V8.02 MYPRO 11/30/2007 13:29:07 PAGE 2
56 #define Adr_Ph1_L 0x0a00
57 #define Adr_Ph1_H 0x0b00
58 #define Adr_Ph2_L 0x0c00
59 #define Adr_Ph2_H 0x0d00
60 #define Adr_Ph3_L 0x0e00
61 #define Adr_Ph3_H 0x0f00
62
63 /*=======================================================================
64 (数据)
65 =======================================================================*/
66 //产生1HZ频率 00000056
67 #define FRE0LL 0x0056
68 #define FRE0LH 0X0000
69 #define FRE0HL 0x0000
70 #define FRE0HH 0X0000
71 //产生1KHZ频率 00014f8b
72 #define FRE1LL 0x008B
73 #define FRE1LH 0x004f
74 #define FRE1HL 0x0001
75 #define FRE1HH 0x0000
76
77 //t/4
78 #define PHA0L 0x0000 //0x2000
79 #define PHA0H 0x0020
80 //t/2
81 #define PHA1L 0x0000 //0x4000
82 #define PHA1H 0x0040
83 //3t/4
84 #define PHA2L 0x0000 //0x6000
85 #define PHA2H 0x0060
86 //t
87 #define PHA3L 0x0000 //0x8000
88 #define PHA3H 0x0080
89
90 /*=======================================================================
91 (功能)
92 =======================================================================*/
93 //初始化时的一些功能
94 #define SLEEP 0x2000 //SLEEP
95 #define NOSLEEP 0x0000
96 #define RESET 0x1000 //RESET
97 #define NORESET 0x0000
98 #define CLEAR 0x0800 //CLEAR
99 #define NOCLEAR 0x0000
100 // 同步、数据源选择方式
101 #define SYNC ENABLE // 使能同步
102 #define SELSRC ENABLE // ENABLE:选择位 DISZBLE:选择引脚
103 #if(SYNC)
104 #define SynChrTion 0x2000 //同步
105 #else
#define SynChrTion 0x0000
#endif
108 #if(SELSRC)
109 #define SelBinPin 0x1000 //选择BIN
110 #else
#define SelBinPin 0x0000 //PIN
#endif
113
114 // 频率、相位选择 作为函数SelDataSrc()的参数
115 #define SelFr0 0x0000 //选择频率寄存器0
116 #define SelFr1 0x0100 //选择频率寄存器1
117 #define SelPh0 0x0000 //选择相位寄存器0
C51 COMPILER V8.02 MYPRO 11/30/2007 13:29:07 PAGE 3
118 #define SelPh1 0x0200 //选择相位寄存器1
119 #define SelPh2 0x0400 //选择相位寄存器2
120 #define SelPh3 0x0600 //选择相位寄存器3
121
122
123
124 /*==========================================================================
125 全局变量
126 =========================================================================*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -