📄 cymometer.lst
字号:
C51 COMPILER V8.02 CYMOMETER 08/26/2002 21:45:31 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE CYMOMETER
OBJECT MODULE PLACED IN cymometer.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE cymometer.c LARGE BROWSE DEBUG OBJECTEXTEND
line level source
1 #include"includes.h"
2 extern unsigned long freq_L,freq_H;
3 extern unsigned int tim_num;
4 extern unsigned long freq_plus;
5 extern double freq;
6
7
8
9 void read_fpg() //读取数据
10 {
11 1
12 1 unsigned int i;
13 1
14 1 recont=1;
15 1 // for(i=0;i<100;i++);
16 1 dclk=0;
17 1 // for(i=0;i<100;i++);
18 1 dclk=1;
19 1 // for(i=0;i<100;i++);
20 1 dclk=0;
21 1 // for(i=0;i<100;i++);
22 1 recont=0;
23 1 freq_L=freq_H=0;
24 1 for(i=0;i<32;i++)
25 1 {
26 2 dclk=0;
27 2 // for(j=0;j<100;j++);
28 2 dclk=1;
29 2 // for(j=0;j<100;j++);
30 2 dclk=0;
31 2 // for(j=0;j<100;j++);
32 2 ccda = 1;
33 2 freq_L=freq_L>>1;
34 2 if(ccda)
35 2 {
36 3 freq_L|=0x80000000;
37 3
38 3 }
39 2
40 2 }
41 1
42 1 for(i=0;i<32;i++)
43 1 {
44 2 dclk=0;
45 2 // for(j=0;j<100;j++);
46 2 dclk=1;
47 2 // for(j=0;j<100;j++);
48 2 dclk=0;
49 2 // for(j=0;j<100;j++);
50 2 ccda = 1;
51 2 freq_H=freq_H>>1;
52 2 if(ccda)
53 2 {
54 3
55 3 freq_H|=0x80000000;
C51 COMPILER V8.02 CYMOMETER 08/26/2002 21:45:31 PAGE 2
56 3
57 3 }
58 2 }
59 1 dclk = 0;
60 1 recont=1;
61 1 freq=((double)freq_L/(double)freq_H)*32768.0;
62 1
63 1 }
64 void delay_1msb(void)
65 {
66 1 unsigned int i;
67 1 for(i=0;i<1950;i++);
68 1
69 1 }
70
71 void delay_nms(unsigned int num) //延时nms子程序
72 {
73 1 unsigned int i;
74 1 for(i=0;i<num;i++)
75 1 {
76 2 delay_1msb();
77 2 }
78 1
79 1 }
80 void set_tim() //设定测量时间
81 {
82 1 freq_plus=0;
83 1 freq_plus=(freq_L*1000)/tim_num;
84 1
85 1 if(freq_plus>=100000)
86 1 tim_num=1;
87 1 else if(freq_plus>=10000&&freq_plus<100000)
88 1 tim_num=5;
89 1 else if(freq_plus>=1000&&freq_plus<10000)
90 1 tim_num=20;
91 1 else if(freq_plus>=10&&freq_plus<1000)
92 1 tim_num=2000;
93 1 else if(freq_plus>=0&&freq_plus<10)
94 1 tim_num=4000;
95 1 tim=1;
96 1 delay_nms(1000);
97 1 tim=0;
98 1
99 1
100 1 }
101
102
103
104 /*void set_freq(unsigned char num) //设定分频系数
105 {
106
107 P0=num;
108
109 }*/
110
111 void set_clr() //清零
112 {
113 1 // unsigned int i;
114 1 cclr=1;
115 1 // for(i=0;i<5;i++);
116 1 dclk=0;
117 1 // for(i=0;i<5;i++);
C51 COMPILER V8.02 CYMOMETER 08/26/2002 21:45:31 PAGE 3
118 1 dclk=1;
119 1 // for(i=0;i<5;i++);
120 1 dclk=0;
121 1 // for(i=0;i<5;i++);
122 1 cclr=0;
123 1 }
124
125 void count_freq() //计算实际频率
126 {
127 1
128 1 freq=((double)freq_L/(double)freq_H)*32768.0;
129 1
130 1
131 1
132 1 }
*** WARNING C316 IN LINE 132 OF cymometer.c: unterminated conditionals
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 722 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -