📄 main.lst
字号:
251 3 _write_eep_byte(eep_press_l,num_l);
252 3 _write_eep_byte(eep_press_h,num_h);
253 3 save_data();
254 3 _clear_display();
255 3 _disp_msge(0,0,"SET ");
256 3 _disp_msge(1,0,"Low:xxC-High:xxC");
257 3 _display_bit8(1,4,num_l);
258 3 _display_bit8(1,13,num_h);
259 3 r=old_r;
260 3 c=old_c;
261 3 _cursor_pos(r,c);
262 3 break;
263 3 case KP_LEFT:
264 3 switch (c)
265 3 {
266 4 case 4:
267 4 c=14;
268 4 break;
269 4 case 5:
270 4 c=4;
271 4 break;
272 4 case 13:
273 4 c=5;
274 4 break;
275 4 case 14:
276 4 c=13;
277 4 break;
278 4 default:
279 4 break;
280 4 }
281 3 _cursor_pos(1,c);
282 3 break;
283 3 case KP_RIGHT:
284 3 switch (c)
285 3 {
286 4 case 4:
287 4 c=5;
288 4 break;
289 4 case 5:
290 4 c=13;
291 4 break;
292 4 case 13:
293 4 c=14;
294 4 break;
295 4 case 14:
296 4 c=4;
297 4 break;
298 4 default:
299 4 break;
300 4 }
301 3 _cursor_pos(1,c);
302 3 break;
303 3 case KP_INC:
C51 COMPILER V7.02b MAIN 01/10/2008 11:39:26 PAGE 6
304 3 switch(c)
305 3 {
306 4 case 4:
307 4 if((_hex2tobcd(num_l)&0x0f0) < 0x90)
308 4 num_l +=10;
309 4 _display_bit8(r,4,num_l);
310 4 _cursor_pos (r,4);
311 4 break;
312 4 case 5:
313 4 if((_hex2tobcd(num_l)&0x0f) < 0x9)
314 4 num_l ++;
315 4 _display_bit8(r,4,num_l);
316 4 _cursor_pos (r,5);
317 4 break;
318 4 case 13:
319 4 if((_hex2tobcd(num_h)&0x0f0) < 0x90)
320 4 num_h +=10;
321 4 _display_bit8(r,13,num_h);
322 4 _cursor_pos (r,13);
323 4 break;
324 4 case 14:
325 4 if((_hex2tobcd(num_h)&0x0f) < 0x9)
326 4 num_h ++;
327 4 _display_bit8(r,13,num_h);
328 4 _cursor_pos (r,14);
329 4 break;
330 4 default:
331 4 break;
332 4 }
333 3 break;
334 3 case KP_DEC:
335 3 switch(c)
336 3 {
337 4 case 4:
338 4 if(_hex2tobcd(num_l)&0x0f0)
339 4 num_l -=10;
340 4 _display_bit8(r,4,num_l);
341 4 _cursor_pos (r,4);
342 4 break;
343 4 case 5:
344 4 if(_hex2tobcd(num_l)&0x0f0)
345 4 num_l --;
346 4 _display_bit8(r,4,num_l);
347 4 _cursor_pos (r,5);
348 4 break;
349 4 case 13:
350 4 if(_hex2tobcd(num_h)&0x0f0)
351 4 num_h -=10;
352 4 _display_bit8(r,13,num_h);
353 4 _cursor_pos (r,13);
354 4 break;
355 4 case 14:
356 4 if(_hex2tobcd(num_h)&0x0f)
357 4 num_h --;
358 4 _display_bit8(r,13,num_h);
359 4 _cursor_pos (r,14);
360 4 break;
361 4 default:
362 4 break;
363 4 }
364 3 break;
365 3 default:
C51 COMPILER V7.02b MAIN 01/10/2008 11:39:26 PAGE 7
366 3 break;
367 3 }
368 2 }
369 1 }
370 /*-------------------------------------------------*/
371 void t_run(void)
372 {
373 1 bit exit_flag=0;
374 1 bit hot_flag=1;
375 1 unsigned char real;
376 1
377 1 _clear_display();
378 1 _disp_msge(0,0,"RUN: xx--xx C");
379 1 _disp_msge(1,0," 00 C");
380 1 _display_bit8(0, 8, press_l);
381 1 _display_bit8(0,12, press_h);
382 1 run=0;
383 1 stop=1;
384 1 // flag_disp=0;
385 1 // tm0_num=0;
386 1 while(!exit_flag)
387 1 {
388 2 switch(_scan_key())
389 2 {
390 3 case KP_EXIT:
391 3 exit_flag=1;
392 3 run=1;
393 3 stop=0;
394 3 break;
395 3 case KP_MENU:
396 3 exit_flag=1;
397 3 run=1;
398 3 stop=0;
399 3 break;
400 3 default:
401 3 break;
402 3 }
403 2 // TR0=0;
404 2 real = (char)sample();
405 2 if(real>press_h)
406 2 {
407 3 run=1;
408 3 stop=0;
409 3 hot_flag=0;
410 3 }
411 2 else
412 2 {
413 3 if(real<press_l)
414 3 {
415 4 run=0;
416 4 stop=1;
417 4 hot_flag=1;
418 4 }
419 3 else
420 3 {
421 4 if(hot_flag)
422 4 {
423 5 run=0;
424 5 stop=1;
425 5 }
426 4 else
427 4 {
C51 COMPILER V7.02b MAIN 01/10/2008 11:39:26 PAGE 8
428 5 run=1;
429 5 stop=0;
430 5 }
431 4 }
432 3 }
433 2 // TR0=1;
434 2 // if(flag_disp)
435 2 // {
436 2 if(real>88||real<20)
437 2 {
438 3 if(real>88)
439 3 _disp_msge (1, 11, ">88");
440 3 if(real<20)
441 3 _disp_msge (1, 11, "<20");
442 3 _cursor_sw(0);
443 3 }
444 2 else
445 2 {
446 3 _disp_msge(1,0," 00 C");
447 3 _display_bit8(1,12, real);
448 3 _cursor_sw(0);
449 3 }
450 2 // flag_disp=0;
451 2 // }
452 2 }
453 1 }
454 /*----------------------------------------------------*/
455 unsigned int sample(void)
456 {
457 1 // unsigned char i;
458 1 unsigned char i,j;
459 1 unsigned int t_max,t_min,t_suv_av;
460 1 // unsigned int t_suv_av;
461 1 unsigned int samp[4],t_sum=0;
462 1
463 1 for(i=0;i<4;i++)
464 1 {
465 2 //_display_bit8 (0,0,i);
466 2 //_delay500us(200);
467 2 samp[i]=ad2temp(_ad_result());
468 2 t_sum+=samp[i];
469 2 //_clear_display();
470 2 //_display_bit8 (0,10,i);
471 2 //_display_bit16 (1,10,samp[i]);
472 2 //_display_bit16 (0,10,_ad_result());
473 2 //_delay500us(200);
474 2 }
475 1 t_max=samp[3];
476 1 t_min=samp[3];
477 1 for(j=4;j>1;j--)
478 1 {
479 2 if(samp[j-2]>t_max)
480 2 t_max=samp[j-2]; //get t_max;
481 2 if(samp[j-2]<t_min)
482 2 t_min=samp[j-2]; //get t_max;
483 2 // _clear_display();
484 2 // _display_bit8 (0,3,j-2);
485 2 // _display_bit16 (1,3,t_max);
486 2 // _delay500us(200);
487 2 }
488 1 t_suv_av=(t_sum-t_max-t_min)/2; //get the average of one survey;
489 1
C51 COMPILER V7.02b MAIN 01/10/2008 11:39:26 PAGE 9
490 1 // t_suv_av=t_sum/8;
491 1 return t_suv_av;
492 1 }
493 /*----------------------------------------------------*/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1622 ----
CONSTANT SIZE = 178 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 27
IDATA SIZE = ---- ----
BIT SIZE = ---- 4
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -