📄 adc_0804.lst
字号:
C51 COMPILER V6.23a ADC_0804 12/14/2008 00:08:28 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE ADC_0804
OBJECT MODULE PLACED IN adc_0804.OBJ
COMPILER INVOKED BY: E:\Keil\C51\BIN\C51.EXE adc_0804.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include <absacc.h>
3
4 #define adc XBYTE[0xb000]
5 #define led_wei XBYTE[0x8000]
6 #define led_duan XBYTE[0x9000]
7
8 unsigned char idata adc_val[31];
9 unsigned char code ledseg[]={
10 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, //0-7
11 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E, //8-15
12 0xFF };
13 unsigned char code ledsel[]={0x01,0x02,0x04,0x08};
14 unsigned char adc_dat[4];
15
16 void delayms(unsigned int t)
17 {
18 1 unsigned char i;
19 1 while(--t)
20 1 for(i=0;i<125;i++)
21 1 { ; }
22 1 }
23
24 void adc_start(void)
25 {
26 1 adc=0xff;
27 1 }
28
29 unsigned char adc_change(void)
30 {
31 1 unsigned char V;
32 1 adc_start();
33 1 while(INT0==1);
34 1 V=adc;
35 1 return(V);
36 1 }
37
38 void adc_bcd(void)
39 {
40 1 float x;
41 1 unsigned char i, aver;
42 1 unsigned int sum=0;
43 1 for(i=0;i<31;i++)
44 1 adc_val[i]=adc_change();
45 1 for(i=0;i<31;i++)
46 1 sum+=adc_val[i];
47 1 aver=sum/30;
48 1 //x=adc_change()*1000./51.;
49 1 x=aver/51.0;
50 1 x=x*1000.0;
51 1 adc_dat[0]=(int)x/1000;
52 1 adc_dat[1]=(int)x/100%10;
53 1 adc_dat[2]=(int)x/10%10;
54 1 adc_dat[3]=(int)x%10;
55 1 }
C51 COMPILER V6.23a ADC_0804 12/14/2008 00:08:28 PAGE 2
56
57 void Display(void)
58 {
59 1 unsigned char i;
60 1 adc_bcd();
61 1 for(i=0;i<4;i++)
62 1 {
63 2 if(i==0)
64 2 led_duan=ledseg[adc_dat[i]]&0x7f;
65 2 else
66 2 led_duan=ledseg[adc_dat[i]];
67 2 led_wei =ledsel[i];
68 2 delayms(5);
69 2 led_wei&=0xf0;
70 2 }
71 1 }
72
73 void main(void)
74 {
75 1 while(1)
76 1 {
77 2 Display();
78 2 }
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 271 ----
CONSTANT SIZE = 21 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 4
IDATA SIZE = 31 ----
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 + -