📄 kb.lst
字号:
C51 COMPILER V7.06 KB 08/06/2007 17:38:09 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE KB
OBJECT MODULE PLACED IN kb.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE kb.c OPTIMIZE(9,SPEED) BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <absacc.h>
2 #include <intrins.h>
3 #include "variable.h"
4 #include "main.h"
5 #include "lcd.h"
6 #include "kb.h"
7 #include "i2c.h"
8 #include "ad.h"
9 #include "screen.h"
10 void KB_Proc(void)
11 {
12 1 static bit F_L=0;
13 1 DA_C=0;
14 1 if((DA_C&0XF0)!=0XF0)
15 1 {
16 2 delay(5000);
17 2 if(((DA_C&0XF0)==0XF0)||F_L) return;
18 2 F_L=1;
19 2 DA_C=0XFE;
20 2 switch(DA_C&0XF0)
21 2 {
22 3 case 0xE0: Key_Num(1);break;
23 3 case 0xD0: Key_Num(4);break;
24 3 case 0xB0: Key_Num(7);break;
25 3 case 0x70: Key_Num(0);break;
26 3 }
27 2 DA_C=0XFD;
28 2 switch(DA_C&0XF0)
29 2 {
30 3 case 0xE0: Key_Num(2); break;
31 3 case 0xD0: Key_Num(5); break;
32 3 case 0xB0: Key_Num(8); break;
33 3 case 0x70: Key_Next_Page(); break;
34 3 }
35 2 DA_C=0XFB;
36 2 switch(DA_C&0XF0)
37 2 {
38 3 case 0xE0: Key_Num(3); break;
39 3 case 0xD0: Key_Num(6); break;
40 3 case 0xB0: Key_Num(9); break;
41 3 case 0x70: Key_Pre_Page(); break;
42 3 }
43 2 DA_C=0XF7;
44 2 switch(DA_C&0XF0)
45 2 {
46 3 case 0xE0: Key_Set_Enter(); break;
47 3 case 0xD0: Key_Next_Bit(); break;
48 3 case 0xB0: Key_Pre_Bit(); break;
49 3 case 0x70:
50 3 {
51 4 Key_Test();
52 4 if(Connect_ok)
53 4 {
54 5 unsigned char r;
55 5 ES=0;
C51 COMPILER V7.06 KB 08/06/2007 17:38:09 PAGE 2
56 5 SBUF=0x22;
57 5 while(!TI);
58 5 TI=0;
59 5 for(r=0;r<12;r++)
60 5 {
61 6 IntToByte(Test_Data[r]);
62 6 }
63 5 ES=1;
64 5 }
65 4 } break;
66 3 }
67 2 }
68 1 if(((DA_C&0XF0)==0XF0)&&F_L) F_L=0;
69 1 }
70
71
72 void Key_Set_Enter(void)
73 {
74 1 IO_B=0xFF;
75 1 DA_Convert(0);
76 1 SetK_Flag=!SetK_Flag;
77 1 LCD_Clear();
78 1 if(SetK_Flag==1)
79 1 {
80 2 //Screen_Setting();
81 2 Page_Val=1;
82 2
83 2 }
84 1 else
85 1 {
86 2 //Screen_Test();
87 2 Page_Val=0;
88 2 //Ini_Read();
89 2 }
90 1 Screen_Setting(Page_Val);
91 1 Screen_Read(Page_Val);
92 1 }
93
94 void Key_Num(unsigned char i)
95 {
96 1 static unsigned char SetC_Flag=0;
97 1 static bit SetV_Flag=0,SetR_Flag=0,Adjust_Flag=0;
98 1 unsigned char z;
99 1 if(SetK_Flag==1)
100 1 {
101 2 LCD_CmdWrite(0x10,0x0B);
102 2 switch(Page_Val)
103 2 {
104 3 case 1:
105 3 {
106 4 z=Unit_Addr_L;
107 4 Unit_Addr_L+=Dis_X;
108 4 WRITEBYTE(0xA0,Unit_Addr_H,Unit_Addr_L,i);
109 4 SetP_Data[Dis_X]=i;
110 4 GotoXY(Set_X_1[Dis_Y][Dis_X],Loc_Y[Dis_Y]);
111 4 LCD_DataWrite(Display_Code[SetP_Data[Dis_X]]);
112 4 Unit_Addr_L=z;
113 4 } break;
114 3 case 2:
115 3 {
116 4 if((Dis_Y==2)&&(i==1))
117 4 {
C51 COMPILER V7.06 KB 08/06/2007 17:38:09 PAGE 3
118 5 if(Dis_X==0)
119 5 {
120 6 SetC_Flag++;
121 6 if(SetC_Flag==3) SetC_Flag=0;
122 6 if(SetC_Flag==0)
123 6 {
124 7 SetP_Data[0]=1;
125 7 SetP_Data[1]=0;
126 7 SetP_Data[2]=0;
127 7 }
128 6 if(SetC_Flag==1)
129 6 {
130 7 SetP_Data[0]=0;
131 7 SetP_Data[1]=1;
132 7 SetP_Data[2]=0;
133 7 }
134 6 if(SetC_Flag==2)
135 6 {
136 7 SetP_Data[0]=0;
137 7 SetP_Data[1]=0;
138 7 SetP_Data[2]=1;
139 7 }
140 6 WRITEDATAARRAY(3,0xA0,Unit_Addr_H,Unit_Addr_L,SetP_Data);
141 6 GotoXY(Set_X_2[Dis_Y][Dis_X],Loc_Y[Dis_Y]);
142 6 for(z=0;z<Num_Now;z++)
143 6 {
144 7 LCD_DataWrite(Display_Code[SetP_Data[Dis_X++]]);
145 7 delay(200);
146 7 }
147 6 for(z=0;z<Num_Now;z++) Dis_X--;
148 6 }
149 5 else if(Dis_X==3)
150 5 {
151 6 SetR_Flag=!SetR_Flag;
152 6 if(SetR_Flag) SetP_Data[Dis_X]=10;//1A
153 6 else SetP_Data[Dis_X]=12; //1C
154 6 z=Unit_Addr_L;
155 6 Unit_Addr_L+=Dis_X;
156 6 WRITEBYTE(0xA0,Unit_Addr_H,Unit_Addr_L,SetP_Data[Dis_X]);
157 6 GotoXY(Set_X_2[Dis_Y][Dis_X],Loc_Y[Dis_Y]);
158 6 LCD_DataWrite(Display_Code[SetP_Data[Dis_X]]);
159 6 Unit_Addr_L=z;
160 6 }
161 5 }
162 4 else if((Dis_Y==2)&&(i!=1)) ;
163 4 else
164 4 {
165 5 z=Unit_Addr_L;
166 5 Unit_Addr_L+=Dis_X;
167 5 WRITEBYTE(0xA0,Unit_Addr_H,Unit_Addr_L,i);
168 5 SetP_Data[Dis_X]=i;
169 5 GotoXY(Set_X_2[Dis_Y][Dis_X],Loc_Y[Dis_Y]);
170 5 LCD_DataWrite(Display_Code[SetP_Data[Dis_X]]);
171 5 Unit_Addr_L=z;
172 5 }
173 4 } break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -