📄 interface.lst
字号:
159 4 well_index[NowWellNum].BeginTime[j]=Read_Eeprom(0x400*i+HollDateLong+13+j);
160 4 }
161 3 well_index[NowWellNum].BeginTime[8]=0x00;
162 3 // 读井号
163 3 well_index[NowWellNum].Num=Read_Eeprom(0x400*i+HollDateLong+22);
164 3
165 3 WellSaveStation[i]=0xAA;
166 3 UsedWell[NowWellNum]=i;
167 3 NowWellNum++;
168 3 }
169 2
170 2 }
171 1 // 空数据
172 1 if(!NowWellNum)
173 1 {
174 2 LCD_CLEAR();
C51 COMPILER V7.06 INTERFACE 06/25/2008 15:44:08 PAGE 4
175 2 //LCD_DispStr("No Date.",32,5);
176 2 disp_chn_str("无数据",14,10,12,1);
177 2 //LCD_DispStr("E:Return.",48,5);
178 2 disp_chn_str("任意键返回",50,10,12,1);
179 2 Display_Data();
180 2 while(!get_key(1));
181 2 return;
182 2 }
183 1 // 井名检索
184 1 cursor_line = 0 ;
185 1 NowFirstAddr= 0 ;
186 1
187 1 while(1)
188 1 {
189 2 LCD_CLEAR();
190 2 sprintf(Str_Buffer,"Now:%02.0f",(float)(NowFirstAddr+cursor_line+1));
191 2 LCD_DispStr(Str_Buffer,56,8) ;
192 2 sprintf(Str_Buffer,"ALL:%02.0f",(float)NowWellNum);
193 2 LCD_DispStr(Str_Buffer,56,50) ;
194 2
195 2 if(NowWellNum>=DISPLAY_LINE_NUM)
196 2 for(i=0;i<DISPLAY_LINE_NUM;i++)
197 2 {
198 3 sprintf(Str_Buffer,"%03.0f",(float)well_index[NowFirstAddr+i].Num);
199 3 LCD_DispStr(Str_Buffer,i*8,8);
200 3 strcpy(Str_Buffer,well_index[NowFirstAddr+i].BeginDate);
201 3 LCD_DispStr(Str_Buffer,i*8,29);
202 3 strcpy(Str_Buffer,well_index[NowFirstAddr+i].BeginTime);
203 3 LCD_DispStr(Str_Buffer,i*8,80);
204 3 }
205 2 else
206 2 for(i=0;i<NowWellNum;i++)
207 2 {
208 3 sprintf(Str_Buffer,"%03.0f",(float)well_index[NowFirstAddr+i].Num);
209 3 LCD_DispStr(Str_Buffer,i*8,8);
210 3 strcpy(Str_Buffer,well_index[NowFirstAddr+i].BeginDate);
211 3 LCD_DispStr(Str_Buffer,i*8,29);
212 3 strcpy(Str_Buffer,well_index[NowFirstAddr+i].BeginTime);
213 3 LCD_DispStr(Str_Buffer,i*8,80);
214 3 }
215 2 LCD_DispStr("=",cursor_line*8,2);
216 2 Display_Data();
217 2
218 2 while(!(SubFK = get_key(1)));
219 2 switch(SubFK)
220 2 {
221 3 case UP_ARROW_KEY:
222 3 {
223 4 LCD_DispStr(" ",cursor_line*8,2) ;
224 4 if(cursor_line != 0x00)
225 4 {
226 5 cursor_line--;
227 5 }
228 4 else
229 4 {
230 5 if(NowFirstAddr > 0x00)
231 5 {
232 6 NowFirstAddr--;
233 6 }
234 5 }
235 4 SubFK=0x00;
236 4 break ;
C51 COMPILER V7.06 INTERFACE 06/25/2008 15:44:08 PAGE 5
237 4 }
238 3 case DOWN_ARROW_KEY:
239 3 {
240 4 LCD_DispStr(" ",cursor_line*8,2) ;
241 4 if(cursor_line != DISPLAY_LINE_NUM-1 && (NowFirstAddr+cursor_line+1) < NowWellNum)
242 4 {
243 5 cursor_line++;
244 5 }
245 4 else
246 4 {
247 5 if(NowFirstAddr < (NowWellNum-DISPLAY_LINE_NUM) && (NowFirstAddr+cursor_line+1) < NowWellNum)
248 5 {
249 6 NowFirstAddr++;
250 6 }
251 5 }
252 4 SubFK=0x00;
253 4 break ;
254 4 }
255 3 case RETURN_KEY:
256 3 {
257 4 /*
258 4 if(NowWellNum >= DISPLAY_LINE_NUM)
259 4 {
260 4 if(NowFirstAddr >= DISPLAY_LINE_NUM)
261 4 {
262 4 NowFirstAddr -= DISPLAY_LINE_NUM;
263 4 }
264 4 else
265 4 {
266 4 if(NowFirstAddr != 0)
267 4 NowFirstAddr=0;
268 4 else
269 4 cursor_line = 0;
270 4 }
271 4 }
272 4 else
273 4 {
274 4 NowFirstAddr = 0;
275 4 cursor_line = 0;
276 4 }
277 4 */
278 4 SubFK=0x00;
279 4 return ;
280 4 }
281 3 case LEFT_ARROW_KEY :
282 3 {
283 4 SubFK=0x00;
284 4 LCD_DispStr("Del?",56,98);Display_Data();
285 4 while(!(SubFK = get_key(1)));
286 4 if(SubFK==RETURN_KEY)
287 4 {
288 5 i=UsedWell[NowFirstAddr+cursor_line];
289 5 Write_Eeprom(0x400*i+HollDateLong+0,0xFF);
290 5 Write_Eeprom(0x400*i+HollDateLong+1,0xFF);
291 5 longjmp(ReturnToJSJM,0);
292 5 }
293 4 else if(SubFK==LEFT_ARROW_KEY)
294 4 ;
295 4 /*
296 4 if(NowWellNum >= DISPLAY_LINE_NUM)
297 4 {
298 4 if(NowFirstAddr + 2*DISPLAY_LINE_NUM <= NowWellNum)// && (NowFirstAddr+cursor_line + 1 + DISPLAY_LINE
C51 COMPILER V7.06 INTERFACE 06/25/2008 15:44:08 PAGE 6
-_NUM) <= NowWellNum)
299 4 {
300 4 NowFirstAddr += DISPLAY_LINE_NUM;
301 4 }
302 4 else
303 4 {
304 4 if(NowFirstAddr != NowWellNum - DISPLAY_LINE_NUM)
305 4 NowFirstAddr = NowWellNum - DISPLAY_LINE_NUM;
306 4 else
307 4 cursor_line = DISPLAY_LINE_NUM-1;
308 4 }
309 4 }
310 4 else
311 4 {
312 4 NowFirstAddr = 0 ;
313 4 cursor_line = NowWellNum - 1;
314 4 }
315 4 */
316 4
317 4 //SubFK=0x00;
318 4 break ;
319 4 }
320 3 case RIGHT_ARROW_KEY:
321 3 {
322 4 Well_Show(UsedWell[NowFirstAddr+cursor_line]);
323 4 SubFK=0x00;
324 4 while(!get_key(1));
325 4 break ;
326 4 }
327 3 default :break ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -