📄 ad_max197.lst
字号:
C51 COMPILER V7.50 AD_MAX197 08/14/2007 11:10:47 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE AD_MAX197
OBJECT MODULE PLACED IN AD_MAX197.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE AD_MAX197.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #define uchar unsigned char
2 #define uint unsigned int
3 #define ulong unsigned long
4
5 #include<reg52.h>
6 #include<absacc.h>
7 #include<intrins.h>
8 #include"ad_max197.h"
9 //#include"lcd_12864.h"
10
11 #define AD_CMD 0x48 //选择通道0,输入范围0~5V。
12 //0,1,2位为通道选择位。3,4位为输入范围选择位(0:0~5V, 1:-5~+5V, 2:0~10V, 3:-10~+10
-V)
13 #define count 50
14 //uchar AD_Convert=0;
15
16 //void AD_READY(void) interrupt 2
17 //{
18 // AD_Convert=1;
19 //}
20
21 void main()
22 { bit flag;
23 1 uchar high_4,low_8,i;
24 1 long convert_number;
25 1 float sample_value;
26 1
27 1 //char high_4;
28 1 //uchar low_8;
29 1 //int convert_number;
30 1 //float sample_value;
31 1
32 1 LCDInit();
33 1 LCDClr();
34 1 Disponechar(0,0,'A');
35 1 Disponechar(1,0,'D');
36 1
37 1 //EA=1; //开中断
38 1 //EX1=1; //开外部中断1
39 1 //IT1=1; //设定外部中断1为负跳变触发
40 1
41 1 while(1)
42 1
43 1 AD_MAX197_Bipolar(0,1);
44 1 //AD_MAX197_Polar(0,0);
45 1 /*
46 1 while(1)
47 1 {
48 1 convert_number=0;
49 1 for(i=0;i<count;i++)
50 1 {
51 1 XBYTE[0xfa00]=AD_CMD; //置AD控制字
52 1 while(AD_Convert==0);
53 1 AD_Convert=0;
54 1 high_4=AD_SAMPLE_HIGH; //接收高四位, P2_3=1; P27 P22,P21,P20控制片选选通
C51 COMPILER V7.50 AD_MAX197 08/14/2007 11:10:47 PAGE 2
55 1 // Dispnumber(high_4,3,10,0);
56 1 low_8=AD_SAMPLE_LOW; //接收低八位, P2_3=0; P27 P22,P21,P20控制片选选通
57 1 // Dispnumber(low_8,3,10,1);
58 1
59 1 if((high_4&0x08)==0x08) //&逻辑运算,&&关系运算
60 1 {
61 1 high_4=0x0f-(high_4&0x0f);
62 1 low_8=0x0100-low_8;
63 1 convert_number=convert_number - high_4*256 - low_8;
64 1 } //处理采集负电压时得到的补码
65 1 else convert_number=convert_number+ high_4*256 + low_8;
66 1 }
67 1 convert_number=convert_number/count;
68 1 switch(AD_CMD&0x18)
69 1 {
70 1 case 0x08:convert_number=convert_number*2;break;
71 1 case 0x10:convert_number=convert_number*2;break;
72 1 case 0x18:convert_number=convert_number*4;break;
73 1 default: break;
74 1 }
75 1 sample_value=(uint)(convert_number*1.2207);
76 1
77 1 Dispnumber_float(sample_value,4,3,10,2);
78 1 if(convert_number<0) Disponechar(5,2,'-');
79 1 else Disponechar(5,2,'+');
80 1 }
81 1 */
82 1
83 1
84 1 }
*** WARNING C280 IN LINE 22 OF AD_MAX197.C: 'flag': unreferenced local variable
*** WARNING C280 IN LINE 23 OF AD_MAX197.C: 'high_4': unreferenced local variable
*** WARNING C280 IN LINE 23 OF AD_MAX197.C: 'low_8': unreferenced local variable
*** WARNING C280 IN LINE 23 OF AD_MAX197.C: 'i': unreferenced local variable
*** WARNING C280 IN LINE 24 OF AD_MAX197.C: 'convert_number': unreferenced local variable
*** WARNING C280 IN LINE 25 OF AD_MAX197.C: 'sample_value': unreferenced local variable
85
86
87 /*******测时程序*********
88 TMOD=0X10;
89 TH1=0;
90 TL1=0;
91 TR1=1;
92 process();
93 TR1=0;
94 Dispnumber(TH1*256+TL1,4,10,1);
95 while(1);
96 ***********************/
97 /*
98 while(1)
99 {
100 sample_value=(uint)(AD_MAX197(1,1)*1.2207);
101 Dispnumber_float(sample_value,4,3,10,2);
102 if(flag==1) Disponechar(5,2,'-');
103 else Disponechar(5,2,'+');
104 }
105 */
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2225 ----
CONSTANT SIZE = 1661 ----
C51 COMPILER V7.50 AD_MAX197 08/14/2007 11:10:47 PAGE 3
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 10 91
IDATA SIZE = ---- ----
BIT SIZE = ---- 2
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 6 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -