📄 keydeal.lst
字号:
C51 COMPILER V8.02 KEYDEAL 05/20/2008 01:52:02 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE KEYDEAL
OBJECT MODULE PLACED IN keydeal.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE src\keydeal.c BROWSE DEBUG OBJECTEXTEND PRINT(.\keydeal.lst) OBJECT(keydeal
-.obj)
line level source
1 #include "reg5410.h"
2 #include "head.h"
3
4
5
6
7 extern void DispZimu(unsigned char x,unsigned char y,unsigned char how,unsigned char *stri);
8 extern void DispShuzi(unsigned char x,unsigned char y,unsigned int n); //8*16数字显示
9 extern void DispShuzi0(unsigned char x,unsigned char y,unsigned int n); //8*16数字显示
10 extern void DispHanzi(unsigned char x,unsigned char y,unsigned char how,unsigned char *stri);
11 extern void send_command(unsigned char command_data) ;
12 extern void GetADCaiJiDL(unsigned int *ADData);
13 extern void GetADCaiJiDY(unsigned int *ADData);
14 extern unsigned char read(unsigned char ADDRH,unsigned char ADDRL);
15 extern void write(unsigned char ADDRH,unsigned char *p,unsigned char k);
16
17 extern unsigned int Sec;
18 extern unsigned int Min;
19
20 void Disp_Page0(void);
21 void Disp_Page1(void);
22 void Disp_Page2(void);
23 void Disp_Page3(void);
24
25 void jiemian(void)
26 {
27 1 static unsigned char ti=0,page=0;
28 1 unsigned int tmp=0;
29 1 if(page==1)
30 1 {
31 2 GetADCaiJiDL(&tmp);DispShuzi0(2,5,tmp);
32 2 GetADCaiJiDY(&tmp);DispShuzi0(1,5,tmp);
33 2 }
34 1 if(Mode==0||Up==0||Down==0)
35 1 {
36 2 ti++;
37 2 if(ti>=30)
38 2 {
39 3 ti=0;
40 3 if(Mode==0)
41 3 {
42 4 page++;
43 4 if(page>=5)
44 4 page=0;
45 4 if(page==0)
46 4 Disp_Page0();
47 4 else if(page==1)
48 4 Disp_Page1();
49 4 else if(page==2)
50 4 Disp_Page2();
51 4 else if(page==3)
52 4 Disp_Page3();
53 4 }
54 3 }
C51 COMPILER V8.02 KEYDEAL 05/20/2008 01:52:02 PAGE 2
55 2 }
56 1 else ti=0;
57 1 }
58
59 void Disp_Page0(void)
60 {
61 1 send_command(0x01);
62 1 DispHanzi(1,1,5,"多功能智能");
63 1 DispHanzi(2,1,5,"电池充电器");
64 1 }
65
66 void Disp_Page1(void)
67 {
68 1 unsigned int td=0;
69 1 send_command(0x01);
70 1 DispHanzi(0,0,4,"充电中。");
71 1 DispHanzi(1,0,4,"充电电压");
72 1 DispZimu(1,7,1,"V");
73 1 DispHanzi(2,0,4,"充电电流");
74 1 DispZimu(2,7,1,"A");
75 1 DispHanzi(3,0,4,"充电时间");
76 1 // td=read(0x2a,0x00);Min=td*256+read(0x2a,0x01);
77 1 DispShuzi0(3,4,Min);
78 1
79 1 // td=read(0x28,0x00);Sec=td*256+read(0x28,0x01);
80 1 DispShuzi0(3,6,Sec);
81 1 DispHanzi(3,5,1,"分");
82 1 DispHanzi(3,7,1,"秒");
83 1 }
84
85 void Disp_Page2(void)
86 {
87 1 send_command(0x01);
88 1 DispHanzi(0,0,4,"充电完成");
89 1 }
90
91
92 void Disp_Page3(void)
93 {
94 1 send_command(0x01);
95 1 DispHanzi(0,0,5,"电池被移除" );
96 1 DispHanzi(1,0,4,"充电中止");
97 1 }
98
99 void GetADCaiJiDL(unsigned int *ADData)
100 {
101 1 unsigned int i, j, Sum;
102 1 ADC_CONTR=0x80|0x05;
103 1 for(i=0; i<100; i++);
104 1 Sum = 0;
105 1 for(i=0; i<64; i++)
106 1 {
107 2 ADC_CONTR|=0x08;
108 2 while((ADC_CONTR&0x10)==0x00); //等待变成flag=1
109 2 Sum = Sum + (ADC_DATA*4+ADC_LOW2);
110 2 for(j=0; j<100;j++);
111 2 }
112 1 *ADData = Sum / 64;
113 1 }
114
115 void GetADCaiJiDY(unsigned int *ADData)
116 {
C51 COMPILER V8.02 KEYDEAL 05/20/2008 01:52:02 PAGE 3
117 1 unsigned int i, j, Sum;
118 1 ADC_CONTR=0x80|0x06;
119 1 for(i=0; i<100; i++);
120 1 Sum = 0;
121 1 for(i=0; i<64; i++)
122 1 {
123 2 ADC_CONTR|=0x08;
124 2 while((ADC_CONTR&0x10)==0x00); //等待变成flag=1
125 2 Sum = Sum + (ADC_DATA*4+ADC_LOW2);
126 2 for(j=0; j<100;j++);
127 2 }
128 1 *ADData = Sum / 64;
129 1 }
130
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 624 ----
CONSTANT SIZE = 97 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 10
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 + -