📄 adsample.lst
字号:
223 unsigned char xdata i,j;
224
225 switch(AD.uchChType[uchChannel - 1])
226 {
227 case 13:
228 case 16:
229 case 18:
230 for (i=0; i<2; i++)
231 {
232 for (j=0;j<15;j++)
233 {
234 // AD.uiDataAverageBAK[i][j] = 0x812; //改电路之前的数据 4cb
235 }
236 }
237 break;
238 case 14:
239 case 17:
240 for (i=0; i<2; i++)
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 5
241 {
242 for (j=0;j<15;j++)
243 {
244 // AD.uiDataAverageBAK[i][j] = 0x7c0;
245 }
246 }
247 break;
248 }
249 } */
250
251 //--------------------------------------------------------
252 //函数名称:void ADModuleSampleRateInitialize(void)
253 //功 能:初始化采样频率和采样通道
254 //输入参数:通道号
255 //返 回:无
256 //作 者:佟文杰
257 //----------------------------------------------------------
258 void ADModuleSampleRateInitialize(void)
259 {
260 1 switch(AD.uchChType[0])
261 1 {
262 2 case 13: //加速度输入 输出加速度 a-a
263 2 case 16: //速度输入 输出速度 v-v
264 2 switch(AD.uchSampleRate[0])
265 2 {
266 3 case 3: //4K
267 3 SetSampleRate(SYSCLK/12/16044);
268 3 break;
269 3 case 1: //0.5K
270 3 SetSampleRate(SYSCLK/12/2022);
271 3 break;
272 3 default:
273 3 SetSampleRate(SYSCLK/12/16044);
274 3 break;
275 3 }
276 2 AD.uiGroupNum = 16;
277 2 AD.uiGroupLength = 256;
278 2 break;
279 2
280 2 case 14: //加速度输入 输出速度 a-v
281 2 case 15: //加速度输入 输出位移
282 2 case 17: //速度输入 输出位移 v-d
283 2 SetSampleRate(SYSCLK/12/16044);
284 2 AD.uiGroupNum = 16;
285 2 AD.uiGroupLength = 256;
286 2 break;
287 2
288 2 case 18: //位移输入 输出位移 d-d
289 2 SetSampleRate(SYSCLK/12/2005);
290 2 AD.uiGroupNum = 16;
291 2 AD.uiGroupLength = 256;
292 2 break;
293 2
294 2 case 22: //LVDT输入 输出机壳膨胀
295 2 case 28: //HHH
296 2 SetSampleRate(SYSCLK/12/8192);
297 2 AD.uiGroupNum = 8;
298 2 AD.uiGroupLength = 256;
299 2 break;
300 2
301 2 default:
302 2 SetSampleRate(SYSCLK/12/16044);
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 6
303 2 break;
304 2 }
305 1 SampleStartControl();
306 1 SetInitChannel();
307 1 }
308
309 //--------------------------------------------------------
310 //函数名称:void SetSampleRateAD(unsigned char uchChannel, unsigned char uchSampleRate)
311 //功 能:将采样频率设置到AD模块
312 //输入参数:通道号,采样频率
313 //返 回:无
314 //作 者:佟文杰
315 //----------------------------------------------------------
316 void SetSampleRateAD(unsigned char uchChannel, unsigned char uchSampleRate)
317 {
318 1 AD.uchSampleRate[uchChannel - 1] = uchSampleRate;
319 1 }
320
321 //--------------------------------------------------------
322 //函数名称:void SetChannleType(unsigned char uchChannel,unsigned char uchChannelType)
323 //功 能:设置采样通道类型
324 //输入参数:采样通道,采样通道类型
325 //返 回:无
326 //作 者:佟文杰
327 //----------------------------------------------------------
328 void SetChannleType(unsigned char uchChannel,unsigned char uchChannelType)
329 {
330 1 if (((uchChannelType > 12) && (uchChannelType < 19)) || ((uchChannelType > 20) && (uchChannelType <23)) |
-| (uchChannelType==28))
331 1 {
332 2 AD.uchChType[uchChannel - 1] = uchChannelType;
333 2 }
334 1 else
335 1 {
336 2 AD.uchChType[uchChannel - 1] = 13; //设定类型,不在范围之内默认加速度输入,加速度输出
337 2 }
338 1 }
339
340 //--------------------------------------------------------
341 //函数名称:void SetSensorDirection(unsigned char uchChannel, unsigned char uchSensorDirection)
342 //功 能:设置传感器方向
343 //输入参数:通道号,传感器方向
344 //返 回:无
345 //作 者:佟文杰
346 //----------------------------------------------------------
347 void SetSensorDirection(unsigned char uchChannel, unsigned char uchSensorDirection)
348 {
349 1 AD.uchSenDirection[uchChannel - 1] = uchSensorDirection;
350 1 }
351
352 //--------------------------------------------------------
353 //函数名称:void SetMeasureType(unsigned char uchChannel, unsigned char uchtMeasureType)
354 //功 能:设置测量类型
355 //输入参数:通道号,测量类型
356 //返 回:无
357 //作 者:佟文杰
358 //----------------------------------------------------------
359 void SetMeasureType(unsigned char uchChannel, unsigned char uchtMeasureType)
360 {
361 1 AD.uchtMeasureType[uchChannel - 1] = uchtMeasureType;
362 1 }
363
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 7
364 //--------------------------------------------------------
365 //函数名称:void SetCPUPosizationStatusAD(unsigned char uchCPUPosizationFlag)
366 //功 能:设置上下CPU位置的标志
367 //输入参数:CPU位置标志
368 //返 回:无
369 //作 者:佟文杰
370 //----------------------------------------------------------
371 void SetCPUPosizationStatusAD(unsigned char uchCPUPosizationFlag)
372 {
373 1 AD.uchCPUPosizationStatus = uchCPUPosizationFlag;
374 1 }
375
376 //--------------------------------------------------------
377 //函数名称:void SetSensorSensitive(unsigned char uchChannel, unsigned int uiSensorSensitive)
378 //功 能:设置传感器灵敏度
379 //输入参数:通道号,传感器灵敏度
380 //返 回:无
381 //作 者:佟文杰
382 //----------------------------------------------------------
383 void SetSensorSensitive(unsigned char uchChannel, unsigned int uiSensorSensitive)
384 {
385 1 AD.uiSenSensitive[uchChannel - 1] = uiSensorSensitive;
386 1 }
387
388 //--------------------------------------------------------
389 //函数名称:void SetZeroPosition(unsigned char uchChannel, int iZeroPosition)
390 //功 能:设置零点位置
391 //输入参数:通道号,零点位置电压值
392 //返 回:无
393 //作 者:佟文杰
394 //----------------------------------------------------------
395 void SetZeroPosition(unsigned char uchChannel, int iZeroPosition)
396 {
397 1 AD.iZeroPosition[uchChannel - 1] = iZeroPosition;
398 1 }
399
400 //--------------------------------------------------------
401 //函数名称:void SetScaleLow(unsigned char uchChannel,int iScaleLow)
402 //功 能:设置量程范围下限
403 //输入参数:通道号,量程下限
404 //返 回:无
405 //作 者:佟文杰
406 //----------------------------------------------------------
407 void SetScaleLow(unsigned char uchChannel,int iScaleLow)
408 {
409 1 AD.iScaleLow[uchChannel - 1] = iScaleLow;
410 1 }
411
412 //--------------------------------------------------------
413 //函数名称:void SetScaleHigh(unsigned char uchChannel,int iScaleHigh)
414 //功 能:设置量程范围上限
415 //输入参数:通道号,量程上限
416 //返 回:无
417 //作 者:佟文杰
418 //----------------------------------------------------------
419 void SetScaleHigh(unsigned char uchChannel,int iScaleHigh)
420 {
421 1 AD.iScaleHigh[uchChannel - 1] = iScaleHigh;
422 1 }
423
424 //--------------------------------------------------------
425 //函数名称:void SetACADZero(unsigned char uchChannel,unsigned int uiACADZero)
C51 COMPILER V7.10 ADSAMPLE 09/18/2008 14:09:32 PAGE 8
426 //功 能:设置交流通道零点数据
427 //输入参数:通道号,交流通道零点数据
428 //返 回:无
429 //作 者:佟文杰
430 //----------------------------------------------------------
431 void SetACADZero(unsigned char uchChannel,unsigned int uiACADZero)
432 {
433 1 AD.uiACADZero[uchChannel - 1] = uiACADZero;
434 1 }
435
436 //--------------------------------------------------------
437 //函数名称:void SetACADFull(unsigned char uchChannel,unsigned int uiACADFull)
438 //功 能:设置交流通道满度
439 //输入参数:通道号,交流通道满度数据
440 //返 回:无
441 //作 者:佟文杰
442 //----------------------------------------------------------
443 void SetACADFull(unsigned char uchChannel,unsigned int uiACADFull)
444 {
445 1 AD.uiACADSpan[uchChannel - 1] = uiACADFull;
446 1 }
447
448 //--------------------------------------------------------
449 //函数名称:void SetDCADZero(unsigned char uchChannel,unsigned int uiDCADZero)
450 //功 能:设置直流通道零点数据
451 //输入参数:通道号,直流通道零点数据
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -