📄 max195.lst
字号:
C51 COMPILER V7.06 MAX195 11/04/2008 00:24:46 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAX195
OBJECT MODULE PLACED IN max195.OBJ
COMPILER INVOKED BY: F:\keil c\C51\BIN\C51.EXE max195.c BROWSE DEBUG OBJECTEXTEND TABS(16)
stmt level source
1 /***************************************
2 毕业设计总程序
3 日期:07。11。25
4 *****************************************/
5 #include<reg52.h>
6 #include<slcd12864.h>
7 #include<max531.h>
8 #include<max195.h>
9 #define uchar unsigned char
10 #define uint unsigned int
11
12 sbit red = P3^5;
13 sbit green=P3^4;
14
15 uint j;
16
17 uint max531_data=0;
18
19 uint max195_data0,max195_data1,max195_data2,
20 max195_data3,max195_data4,max195_data5,max195_data6;
21 float max195_data=0;
22
23 const uchar dis_0[]={"毫欧表 "};
24 const uchar dis_1[]={"量程:4m 欧~400欧"};
25 const uchar dis_2[]={"现在的电阻值: "};
26 const uchar dis_6[]={"毫欧"};
27
28
29 /*******************************************
30 显示固定的函数
31 ***********************************************/
32 void dis()
33 {
34 1 uchar i;
35 1 write_command(0x80);
36 1 for(i=0;i<16;i++)
37 1 {
38 2 write_data(dis_0[i]);
39 2 }
40 1
41 1 write_command(0x90);
42 1 for(i=0;i<16;i++)
43 1 {
44 2 write_data(dis_1[i]);
45 2
46 2 }
47 1
48 1 write_command(0x88);
49 1 for(i=0;i<16;i++)
50 1 {
51 2 write_data(dis_2[i]);
52 2 }
53 1
54 1 write_command(0x9e);
55 1 for(i=0;i<4;i++)
C51 COMPILER V7.06 MAX195 11/04/2008 00:24:46 PAGE 2
56 1 {
57 2 write_data(dis_6[i]);
58 2 }
59 1
60 1 }
61 /**********************************************
62 函数:void display()
63 功能:显示函数
64 ************************************************/
65 void display()
66 {
67 1 uchar i;
68 1 float da;
69 1 uint d1;
70 1 uint d2;
71 1 uint d3;
72 1
73 1 uint Test;
74 1
75 1 uchar dis_3[5];
76 1 uchar dis_4[4];
77 1
78 1 da=max195_data0+max195_data1+max195_data2+max195_data3+max195_data4+max195_data5+max195_data6;
79 1
80 1 //max195_data=(uint)(da/2);
81 1 //Test=(uint)(20*(max195_data));
82 1 //Test=max195_data;
83 1
84 1 d1=max195_data0+max195_data1;
85 1 d1=d1/2;
86 1
87 1 d2=(max195_data2+max195_data3);
88 1 d2=d2/2;
89 1
90 1 d3=max195_data4+max195_data5;
91 1 d3=d3/2;
92 1
93 1 da=(d1+d2+d3);
94 1 Test=(uint)(da/1.301);
95 1
96 1 dis_3[0]=Test/10000;
97 1 dis_3[1]=Test%10000/1000;
98 1 dis_3[2]=Test%1000/100;
99 1 dis_3[3]=Test%100/10;
100 1 dis_3[4]=Test%10;
101 1
102 1
103 1 dis_4[0]=max531_data/1000;
104 1 dis_4[1]=max531_data%1000/100;
105 1 dis_4[2]=max531_data%100/10;
106 1 dis_4[3]=max531_data%10;
107 1
108 1 write_command(0x98);
109 1 for(i=0;i<4;i++)
110 1 {
111 2 write_data(dis_4[i]+0x30);
112 2 }
113 1
114 1 write_command(0x9b);
115 1 for(i=0;i<5;i++)
116 1 {
117 2 write_data(dis_3[i]+0x30);
C51 COMPILER V7.06 MAX195 11/04/2008 00:24:46 PAGE 3
118 2 }
119 1 }
120 /****************************************
121 函数:void time_0() interrupt 1
122 功能:中断函数,计到一秒就赋值显示
123 *****************************************/
124 void time_0() interrupt 1
125 {
126 1 TH0=0x3c;
127 1 TL0=0xb0;
128 1 j++;
129 1 if(j==10) //计到100ms
130 1 {
131 2 TR0=0;
132 2 display();
133 2 j=0;
134 2 }
135 1 }
136 /************************************************************/
137 void main()
138 {
139 1
140 1 lcd_init();
141 1 TMOD=0x01; //T1计数,T0定时,都工作在方式1
142 1 TH0=0x3c;
143 1 TL0=0xb0; //50ms中断一次,计数二十次
144 1 ET0=1;
145 1 TR0=0;
146 1 EA=1;
147 1 dis();
148 1 max531_data=1000;
149 1 while(1)
150 1 {
151 2
152 2 write_max531(max531_data);
153 2 max195_data0=max195_change();
154 2 delay(10000);
155 2
156 2 write_max531(max531_data);
157 2 max195_data1=max195_change();
158 2 delay(10000);
159 2
160 2 write_max531(max531_data);
161 2 max195_data2=max195_change();
162 2 delay(10000);
163 2
164 2 write_max531(max531_data);
165 2 max195_data3=max195_change();
166 2 delay(10000);
167 2
168 2 write_max531(max531_data);
169 2 max195_data4=max195_change();
170 2 delay(10000);
171 2
172 2 write_max531(max531_data);
173 2 max195_data5=max195_change();
174 2 delay(10000);
175 2
176 2 write_max531(max531_data);
177 2 max195_data6=max195_change();
178 2 delay(10000);
179 2 //TR0=1;
C51 COMPILER V7.06 MAX195 11/04/2008 00:24:46 PAGE 4
180 2 display();
181 2 if(max195_data>60000){red=0;green=1;max531_data=20;}
182 2 else{green=0;red=1;max531_data=1000;}
183 2 }
184 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 958 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 78 9
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 + -