📄 jzht.lst
字号:
372 3 P1=wave_add;//选择地址
373 3 }
374 2 //插入频率设定程序
375 2 //根据wave_ff频率数值,计算定时器2的装入值
376 2 set_f.lword=1500000/wave_ff;
377 2 set_f.lword=65536-set_f.lword;
378 2 TR2=0;
379 2 RCAP2H=set_f.byte[2];
380 2 RCAP2L=set_f.byte[3];
381 2 TR2=1;
382 2 disp_statu=8;
383 2 }
384 1 else if(j==11)//幅值加0.1V
385 1 {
386 2 if(disp_statu==1)//容许调整幅值
387 2 {
388 3 if((wave_aa>=10)&&(wave_aa<50))
389 3 {
390 4 wave_aa=wave_aa+1;
391 4 }
392 3 display_table[6]=wave_aa/10;
393 3 display_table[7]=wave_aa%10;
394 3 dispz();
395 3 }
396 2 }
397 1 else if(j==14)//幅值减0.1V
398 1 {
399 2 if(disp_statu==1)//容许调整幅值
400 2 {
401 3 if((wave_aa>10)&&(wave_aa<=50))
402 3 {
403 4 wave_aa=wave_aa-1;
404 4 }
405 3 display_table[6]=wave_aa/10;
406 3 display_table[7]=wave_aa%10;
407 3 dispz();
408 3 }
409 2 }
410 1 else
411 1 {
412 2 }
413 1 }
414 void delay_1s(void) //1秒延时子程
415 {
416 1 unsigned int idata i,j;
417 1 for(i=0;i<150;i++)
418 1 {
419 2 for(j=0;j<900;j++)
420 2 {
421 3 }
422 2 }
423 1 }
424 void dispz(void)//显示函数
425 {
426 1 COM=0x87;
427 1 DAT=table[display_table[7]];
C51 COMPILER V7.50 JZHT 09/05/2007 18:16:47 PAGE 8
428 1 COM=0x86;
429 1 DAT=table[display_table[6]];
430 1 COM=0x85;
431 1 DAT=table[display_table[5]];
432 1 COM=0x84;
433 1 DAT=table[display_table[4]];
434 1 COM=0x83;
435 1 DAT=table[display_table[3]];
436 1 COM=0x82;
437 1 DAT=table[display_table[2]]|0x08;
438 1 COM=0x81;
439 1 DAT=table[display_table[1]];
440 1 COM=0x80;
441 1 DAT=table[display_table[0]];
442 1 }
443 void main(void)
444 {
445 1 unsigned int temp;
446 1 for(temp=0;temp<20000;temp++)
447 1 {}
448 1 COM=0x00;
449 1 COM=0x3f;//键盘显示方式,时钟分频
450 1 EX0=1;
451 1 IT0=1;
452 1 T2CON=0;
453 1 T2MOD=2;
454 1 TR2=0;
455 1 RCAP2H=0xff;
456 1 RCAP2L=0x00;
457 1 TR2=1;
458 1 EA=1;
459 1 display_table[0]=8;
460 1 display_table[1]=8;
461 1 display_table[2]=8;
462 1 display_table[3]=8;
463 1 display_table[4]=8;
464 1 display_table[5]=8;
465 1 display_table[6]=8;
466 1 display_table[7]=8;
467 1 dispz();
468 1 wave_kind=0;
469 1 wave_ff=100;
470 1 wave_aa=10;
471 1 disp_statu=8;
472 1 for(;;)
473 1 {
474 2 if(disp_statu==8)//显示频率
475 2 {
476 3 if(wave_kind==0)
477 3 {
478 4 display_table[0]=5;
479 4 }
480 3 else if(wave_kind==1)
481 3 {
482 4 display_table[0]=0x0f;
483 4 }
484 3 else if(wave_kind==2)
485 3 {
486 4 display_table[0]=0x0a;
487 4 }
488 3 else if(wave_kind==3)
489 3 {
C51 COMPILER V7.50 JZHT 09/05/2007 18:16:47 PAGE 9
490 4 display_table[0]=18;
491 4 }
492 3 display_table[1]=0x0f;
493 3 display_table[2]=wave_ff/100000;
494 3 disp_temp1=wave_ff%100000;
495 3 display_table[3]=disp_temp1/10000;
496 3 disp_temp1=disp_temp1%10000;
497 3 display_table[4]=disp_temp1/1000;
498 3 disp_temp1=disp_temp1%1000;
499 3 display_table[5]=disp_temp1/100;
500 3 disp_temp1=disp_temp1%100;
501 3 display_table[6]=disp_temp1/10;
502 3 disp_temp1=disp_temp1%10;
503 3 display_table[7]=disp_temp1;
504 3 dispz();
505 3 delay_1s();
506 3 if(disp_statu==8)
507 3 {disp_statu=2;}
508 3 }
509 2 else if(disp_statu==2)//显示幅值
510 2 {
511 3 if(wave_kind==0)
512 3 {
513 4 display_table[0]=5;
514 4 }
515 3 else if(wave_kind==1)
516 3 {
517 4 display_table[0]=0x0f;
518 4 }
519 3 else if(wave_kind==2)
520 3 {
521 4 display_table[0]=0x0a;
522 4 }
523 3 else if(wave_kind==3)
524 3 {
525 4 display_table[0]=18;
526 4 }
527 3 display_table[1]=0x0a;
528 3 display_table[2]=19;
529 3 display_table[3]=17;
530 3 display_table[4]=17;
531 3 display_table[5]=17;
532 3 display_table[6]=wave_aa/10;
533 3 display_table[7]=wave_aa%10;
534 3 dispz();
535 3 delay_1s();
536 3 if(disp_statu==2)
537 3 {disp_statu=8;}
538 3 }
539 2 else
540 2 {
541 3 delay_1s();
542 3 }
543 2
544 2 }
545 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1782 ----
CONSTANT SIZE = 20 ----
XDATA SIZE = ---- ----
C51 COMPILER V7.50 JZHT 09/05/2007 18:16:47 PAGE 10
PDATA SIZE = ---- ----
DATA SIZE = 37 5
IDATA SIZE = ---- 4
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 + -