📄 adsample.lst
字号:
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE ADSAMPLE
OBJECT MODULE PLACED IN ADSample.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 20progress\ADSample.c BROWSE DEBUG OBJECTEXTEND PRINT(.\ADSample.lst) OBJEC
-T(ADSample.obj)
line level source
1 //*******************************************************************************
2 //Copyright (c) 2007,美国派利斯电子(北京)有限公司 硬件部
3 //文件名称: Hardware.c
4 //摘 要: 本文件主要包含PT2060程序中采样数据处理部分
5 //当前版本: D-1
6 //作 者: 佟文杰
7 //完成日期: 4/13/2007
8 //修 改 人:
9 //修改原因:
10 //修改日期:
11 //*******************************************************************************
12 #include "adsample.h"
13 #include <C8051F020.H>
14 #include <math.h>
15
16 #define MAXLENGTH 0x7FF
17 #define MAXGROUP 16
18 #define SYSCLK 22118400
19
20 unsigned int idata uiSampleteCompleteLocation;
21 unsigned char idata uchSampleLocationNumber;
22 unsigned char idata uchRMSCompleteStatus;
23
24 xdata struct PT2060AD AD _at_ 0x0100; //定义到0x800再开始
25
26 unsigned int *pSampBuffer0;
27 unsigned int *pSampBuffer1;
28 unsigned int *pSampBuffer2;
29 unsigned int *pSampBuffer3;
30
31 unsigned int idata uchChannelScaleStatus[2];
32
33
34
35
36 //unsigned int idata temp;
37
38 //unsigned char idata l;
39
40 unsigned char idata uchRMSDataStorageNumber1;
41 unsigned char idata uchRMSDataStorageNumber2;
42
43
44
45
46
47
48 unsigned char xdata uchValue1;
49 unsigned char xdata uchValue2;
50
51
52 unsigned int xdata uiRmsCounter[2][4];
53
54
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 2
55
56 unsigned char idata uchPercentCountNumber; //20080910
57
58 float xdata fPercentValueBAK[2][4]; //20080910
59
60
61
62
63
64
65 //-----------------------------------------------------------------------
66 //函数名称:void CaculateDataScale(void)
67 //功 能:提前初始化计算过程中需要的变量
68 //输入参数:无
69 //返 回:无
70 //完成日期:4/16/2007
71 //-----------------------------------------------------------------------
72 void CaculateDataScale(void)
73 {
74 1 unsigned char xdata i;
75 1
76 1 for (i=0; i<2; i++)
77 1 {
78 2 AD.fRealIntegralScaleData[i] = CaculateIntegralScale(i + 1);
79 2 AD.fRealNotIntegralScaleData[i] = CaculateNotIntegralScale(i + 1);
80 2 AD.fRealNotIntegralLittleScaleData[i] = CaculateNotIntegralLittleRangeScale(i + 1);
81 2 AD.fRealLVDTScaleData[i] = CaculateLVDTScale(i + 1);//HHH
82 2 AD.lLvdtMark[i] = CalculateLVDTZeroPosition(i+1); //HHHHHHHHHH
83 2
84 2 JudgeChannelScale(i+1);
85 2 }
86 1 }
87
88 //-----------------------------------------------------------------------
89 //函数名称:void InitADSampleModule(void)
90 //功 能:AD采样模块参数初始化
91 //输入参数:无
92 //返 回:无
93 //完成日期:4/16/2007
94 //-----------------------------------------------------------------------
95 void InitADSampleModule(void)
96 {
97 1 unsigned char xdata i;
98 1 ADModuleSoftInitialize();
99 1
100 1 for (i=0; i<2; i++)
101 1 {
102 2 CaculateIntegrateRMSZero(i+1);
103 2 CaculateNotIntegrateLargeRangeRMSZero(i+1);
104 2 CaculateNotIntegrateLittleRangeRMSZero(i+1);
105 2 }
106 1 //20080730
107 1
108 1 // {
109 1 ADModuleSampleRateInitialize();
110 1 // }
111 1 }
112
113 //-----------------------------------------------------------------------
114 //函数名称:void ADModuleSoftInitialize(void)
115 //功 能:AD采样模块软件参数初始化
116 //输入参数:无
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 3
117 //返 回:无
118 //完成日期:4/16/2007
119 //-----------------------------------------------------------------------
120 void ADModuleSoftInitialize(void)
121 {
122 1 unsigned int i;
123 1 unsigned char j;
124 1
125 1 AD.uchGroupDone = 0;
126 1 AD.uiCurProcessingIndex = 0x0f; //20080703
127 1 AD.uiPassedGroupIndex = 0;
128 1 AD.uiSampleLocation = 0;
129 1 AD.uchCurMinCount = 0;
130 1
131 1 for (i=0; i<2; i++)
132 1 {
133 2 AD.uiDataAverage[i] = 0;
134 2 AD.fDataRMSAverage[i] = 0;
135 2 }
136 1
137 1 AD.uiGapSumPTR1 = 0;
138 1 AD.uiGapSumPTR2 = 0; //加初始化
139 1
140 1 for(i=0;i<32;i++)
141 1 {
142 2 AD.uiGapSumValue1[i] = 0xcc0;
143 2 AD.uiGapSumValue2[i] = 0xcc0 ;
144 2 }
145 1
146 1 AD.uchCurMaxCount = 0;
147 1 AD.uiGapSumPTR1 = 0;
148 1
149 1 for(i=0;i<4;i++)
150 1 {
151 2 AD.uiCurPKPKValue[i] = 0;
152 2 AD.uiLastPKPKValue[i] = 0;
153 2 }
154 1
155 1 for(i=0;i<30;i++)
156 1 {
157 2 AD.uiMaxValue0[i] = 1;
158 2 AD.uiMinValue0[i] = 4095;
159 2 AD.uiMaxGroup0[i] = 14;
160 2 AD.uiMinGroup0[i] = 14;
161 2
162 2 AD.uiMaxValue1[i] = 1;
163 2 AD.uiMinValue1[i] = 4095;
164 2 AD.uiMaxGroup1[i] = 14;
165 2 AD.uiMinGroup1[i] = 14;
166 2
167 2 AD.uiMaxValue2[i] = 1;
168 2 AD.uiMinValue2[i] = 4095;
169 2 AD.uiMaxGroup2[i] = 14;
170 2 AD.uiMinGroup2[i] = 14;
171 2
172 2 AD.uiMaxValue3[i] = 1;
173 2 AD.uiMinValue3[i] = 4095;
174 2 AD.uiMaxGroup3[i] = 14;
175 2 AD.uiMinGroup3[i] = 14;
176 2 }
177 1 // AD.uchCountNumber1 = 0;
178 1 // AD.uchCountNumber2 = 0;
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 4
179 1 // AD.uchCountNumber = 0;
180 1 uchRMSCompleteStatus = 0;
181 1 uiSampleteCompleteLocation = 0;
182 1 uchSampleLocationNumber = 0;
183 1
184 1 uchChannelScaleStatus[0] = 0;
185 1 uchChannelScaleStatus[1] = 0;
186 1 for (i=0; i<8; i++)
187 1 {
188 2 AD.fDataRMSADAverage[0][i] = 0;
189 2 AD.fDataRMSADAverage[1][i] = 0; //20080708
190 2 }
191 1 uchRMSDataStorageNumber1 = 0; //20080708
192 1 uchRMSDataStorageNumber2 = 0; //20080708
193 1
194 1
195 1
196 1
197 1 uchValue1 = 0; //20080708
198 1 uchValue2 = 0; //20080708
199 1
200 1
201 1 uchPercentCountNumber = 0; //20080910
202 1
203 1 for (i=0; i<2; i++)
204 1 {
205 2 for (j=0; j<4; j++)
206 2 {
207 3 fPercentValueBAK[i][j] = 0; //20080910
208 3 }
209 2
210 2
211 2 }
212 1 }
213
214 //--------------------------------------------------------
215 //函数名称:void SetDefaultCentricity(unsigned char uchChannel)
216 //功 能:初始化采样中心线
217 //输入参数:通道号
218 //返 回:无
219 //作 者:佟文杰
220 //----------------------------------------------------------
221 /*void SetDefaultCentricity(unsigned char uchChannel)
222 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -