📄 adc.lst
字号:
C51 COMPILER V7.02a ADC 07/05/2006 21:31:45 PAGE 1
C51 COMPILER V7.02a, COMPILATION OF MODULE ADC
OBJECT MODULE PLACED IN adc.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE adc.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1
2 #include "24e1.h"
3 #include "adc.h"
4
5
6
7 void InitADC(void)
8 {
9 1 //ADCCON = 0x20; // Channel 0, NPD=1, ADCRUN=0, EXTREF=0
10 1 //ADCCON = 0x28; // ADCSEL=8, NPD=1, ADCRUN=0, EXTREF=0
11 1 ADCCON = 0x30; // Channel 0, NPD=1, ADCRUN=0, EXTREF=1
12 1 ADCSTATIC &= 0x1c; //
13 1 ADCSTATIC |= 0x03; // 12bit
14 1 //ADCSTATIC |= 0x01; // 8bit
15 1 ADCCON &= ~0x80; // Start..
16 1 ADCCON |= 0x80; // ..new conversion
17 1 }
18
19 unsigned int ReadADC1(void)
20 {
21 1 unsigned int b;
22 1 //watchdog
23 1 REGX_MSB = 0xFF;
24 1 REGX_LSB = 0xFF;
25 1 while((EXIF & 0x10) == 0) // Wait until ADC conversion complete
26 1 ;
27 1 EXIF &= ~0x10; // Clear ADC completion bit
28 1 b = ADCDATAH; // Read ADC data
29 1 ADCCON &= ~0x80; // Start..
30 1 ADCCON |= 0x80; // ..new conversion
31 1 return b;
32 1 }
33
34 unsigned int ReadADC(void)
35 {
36 1 unsigned int adc[7],adc_rev;
37 1 unsigned int sum;
38 1 unsigned int max,min,temp,i;
39 1 //watchdog
40 1 REGX_MSB = 0xFF;
41 1 REGX_LSB = 0xFF;
42 1 for(i=0;i<7;i++)
43 1 {
44 2 adc[i]=ReadADC1();
45 2 Delay100us(10);
46 2 }
47 1 max=adc[0];
48 1 min=adc[6];
49 1 if(max<min)
50 1 {
51 2 temp=max;
52 2 max=min;
53 2 min=temp;
54 2 }
55 1 for(i=1;i<6;i++)
C51 COMPILER V7.02a ADC 07/05/2006 21:31:45 PAGE 2
56 1 {
57 2 if(adc[i]>max)
58 2 {
59 3 temp=max;
60 3 max=adc[i];
61 3 adc[i]=temp;
62 3 }
63 2 else if(adc[i]<min)
64 2 {
65 3 temp=min;
66 3 min=adc[i];
67 3 adc[i]=temp;
68 3 }
69 2 }
70 1 for(i=1,sum=0;i<6;i++)
71 1 {
72 2 sum+=adc[i];
73 2 }
74 1 adc_rev=sum/5;
75 1 return adc_rev;
76 1 }
77
78
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 266 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 18
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 + -