⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 disp.lst

📁 这是atmel公司的89C51SND1C的mp3源程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 549          *----------------------------------------------------------------------------
 550          * REQUIREMENTS:
C51 COMPILER V6.20c  DISP                                                                  07/10/2002 15:17:45 PAGE 10  

 551          *****************************************************************************/
 552          void print_mem (Byte mem_type)
 553          {
 554   1        switch (mem_type)
 555   1        {
 556   2          case SYMB_DF:
 557   2            lcd_cgram(CGRAM_MEM, cgram_df);
 558   2            break;
 559   2      
 560   2          case SYMB_MMC1:
 561   2            lcd_cgram(CGRAM_MEM, cgram_mmc1);
 562   2            break;
 563   2      
 564   2          case SYMB_MMC2:
 565   2            lcd_cgram(CGRAM_MEM, cgram_mmc2);
 566   2            break;
 567   2      
 568   2          default:
 569   2            lcd_cgram(CGRAM_MEM, cgram_blank);
 570   2            break;
 571   2        }
 572   1      }
 573          
 574          
 575          /*F**************************************************************************
 576          * NAME: print_repeat
 577          *----------------------------------------------------------------------------
 578          * PARAMS:
 579          *   status: - TRUE:  play is repeated after last song
 580          *           - FALSE: play is stopped after last song
 581          * return:
 582          *----------------------------------------------------------------------------
 583          * PURPOSE:
 584          *   Print repeat status on the LCD
 585          *----------------------------------------------------------------------------
 586          * EXAMPLE:
 587          *----------------------------------------------------------------------------
 588          * NOTE:
 589          *----------------------------------------------------------------------------
 590          * REQUIREMENTS:
 591          *****************************************************************************/
 592          void print_repeat (bit status)
 593          {
 594   1        lcd_set_cur(POS_REPEAT);
 595   1        if (status == TRUE)
 596   1        {
 597   2          lcd_putchar(CGRAM_REPEAT / CGRAM_CHAR_SIZE);
 598   2        }
 599   1        else
 600   1        {
 601   2          lcd_putchar(' ');
 602   2        }
 603   1      }
 604          
 605          
 606          /*F*****************************************************************************
 607          * NAME: print_file_name
 608          *-------------------------------------------------------------------------------
 609          * PARAMS:
 610          *
 611          * return:
 612          *----------------------------------------------------------------------------
C51 COMPILER V6.20c  DISP                                                                  07/10/2002 15:17:45 PAGE 11  

 613          * PURPOSE:
 614          *   Print to lcd the current file name
 615          *----------------------------------------------------------------------------
 616          * EXAMPLE:
 617          *----------------------------------------------------------------------------
 618          * NOTE:
 619          *----------------------------------------------------------------------------
 620          * REQUIREMENTS:
 621          *****************************************************************************/
 622          void print_file_name()
 623          {
 624   1        switch(File_type())                       /* print file type icon */
 625   1        {
 626   2          case FILE_DIR:
 627   2            lcd_cgram(CGRAM_TYPE, cgram_dir);     /* select directory icon */
 628   2            break;
 629   2      
 630   2          case FILE_MP3:
 631   2            lcd_cgram(CGRAM_TYPE, cgram_mp3);     /* select song icon */
 632   2            break;
 633   2      
 634   2          case FILE_WAV:
 635   2            lcd_cgram(CGRAM_TYPE, cgram_wav);     /* select voice icon */
 636   2            break;
 637   2      
 638   2          default:
 639   2            lcd_cgram(CGRAM_TYPE, cgram_blank);   /* select voice icon */
 640   2            break;
 641   2        }
 642   1        disp_name_start();                        /* start name display */
 643   1      }
 644          
 645          
 646          /*F*****************************************************************************
 647          * NAME: print_file_type
 648          *-------------------------------------------------------------------------------
 649          * PARAMS:
 650          *
 651          * return:
 652          *----------------------------------------------------------------------------
 653          * PURPOSE:
 654          *   Print to lcd the current file type
 655          *----------------------------------------------------------------------------
 656          * EXAMPLE:
 657          *----------------------------------------------------------------------------
 658          * NOTE:
 659          *----------------------------------------------------------------------------
 660          * REQUIREMENTS:
 661          *****************************************************************************/
 662          void print_file_type()
 663          {
 664   1        switch(File_type())                       /* print file type icon */
 665   1        {
 666   2          case FILE_DIR:
 667   2            lcd_cgram(CGRAM_TYPE, cgram_dir);     /* select directory icon */
 668   2            break;
 669   2      
 670   2          case FILE_MP3:
 671   2            lcd_cgram(CGRAM_TYPE, cgram_mp3);     /* select song icon */
 672   2            break;
 673   2      
 674   2          case FILE_WAV:
C51 COMPILER V6.20c  DISP                                                                  07/10/2002 15:17:45 PAGE 12  

 675   2            lcd_cgram(CGRAM_TYPE, cgram_wav);     /* select voice icon */
 676   2            break;
 677   2      
 678   2          default:
 679   2            lcd_cgram(CGRAM_TYPE, cgram_blank);   /* select voice icon */
 680   2            break;
 681   2        }
 682   1      }
 683          
 684          
 685          /*F*****************************************************************************
 686          * NAME: print_name
 687          *-------------------------------------------------------------------------------
 688          * PARAMS:
 689          *   string: pointer on char string
 690          * return:
 691          *   TRUE:  at the end of the string
 692          *   FALSE: in the middle of the string
 693          *----------------------------------------------------------------------------
 694          * PURPOSE:
 695          *   Print 14 characters of the file name
 696          *----------------------------------------------------------------------------
 697          * EXAMPLE:
 698          *----------------------------------------------------------------------------
 699          * NOTE:
 700          *----------------------------------------------------------------------------
 701          * REQUIREMENTS:
 702          *****************************************************************************/
 703          bit print_name (char pdata *string)
 704          {
 705   1        lcd_set_cur(POS_FILE);
 706   1        lcd_putchar(*string++);
 707   1        lcd_putchar(*string++);
 708   1        lcd_putchar(*string++);
 709   1        lcd_putchar(*string++);
 710   1        lcd_putchar(*string++);
 711   1        lcd_putchar(*string++);
 712   1        lcd_putchar(*string++);
 713   1        lcd_putchar(*string++);
 714   1        lcd_putchar(*string++);
 715   1        lcd_putchar(*string++);
 716   1        lcd_putchar(*string++);
 717   1        lcd_putchar(*string++);
 718   1        lcd_putchar(*string++);
 719   1        lcd_putchar(*string++);
 720   1        return (*string == '\0');
 721   1      }
 722          
 723          
 724          /*F**************************************************************************
 725          * NAME: print_screen
 726          *----------------------------------------------------------------------------
 727          * PARAMS:
 728          *   screen: string in code space to print on LCD
 729          * return:
 730          *----------------------------------------------------------------------------
 731          * PURPOSE:
 732          *   Print a screen string on LCD
 733          *----------------------------------------------------------------------------
 734          * EXAMPLE:
 735          *----------------------------------------------------------------------------
 736          * NOTE:
C51 COMPILER V6.20c  DISP                                                                  07/10/2002 15:17:45 PAGE 13  

 737          *----------------------------------------------------------------------------
 738          * REQUIREMENTS:
 739          *****************************************************************************/
 740          void print_screen (char code *screen)
 741          {
 742   1        lcd_set_cur(POS_HOME);
 743   1        while (*screen != '\0')
 744   1        {
 745   2          lcd_putchar(*screen++);
 746   2        }
 747   1      }
 748          
 749          
 750          /*F**************************************************************************
 751          * NAME: print_string
 752          *----------------------------------------------------------------------------
 753          * PARAMS:
 754          *   string: string in code space to print on LCD
 755          * return:
 756          *----------------------------------------------------------------------------
 757          * PURPOSE:
 758          *   Print a string on LCD
 759          *----------------------------------------------------------------------------
 760          * EXAMPLE:
 761          *----------------------------------------------------------------------------
 762          * NOTE:
 763          *----------------------------------------------------------------------------
 764          * REQUIREMENTS:
 765          *****************************************************************************/
 766          void print_string (char code *string)
 767          {
 768   1        while (*string != '\0')
 769   1        {
 770   2          lcd_putchar(*string++);
 771   2        }
 772   1      }
 773          
 774          
 775          /*F****************************************************************************
 776          * NAME: print_decim
 777          *------------------------------------------------------------------------------
 778          * PARAMS:
 779          *   b:     number to print
 780          *   space: TRUE: print ' 0', FALSE: print '00'
 781          * return:
 782          *------------------------------------------------------------------------------
 783          * PURPOSE:
 784          *   Print a 2 digits number on LCD '00-99' or ' 0-99'
 785          *----------------------------------------------------------------------------
 786          * EXAMPLE:
 787          *----------------------------------------------------------------------------
 788          * NOTE:
 789          *----------------------------------------------------------------------------
 790          * REQUIREMENTS:
 791          *****************************************************************************/
 792          void print_decim (Byte b, bit space)
 793          {
 794   1        if (b < 10)
 795   1        {
 796   2          if (space)
 797   2            lcd_putchar(' ');
 798   2          else
C51 COMPILER V6.20c  DISP                                                                  07/10/2002 15:17:45 PAGE 14  

 799   2            lcd_putchar('0');
 800   2          lcd_putchar(b +'0');
 801   2        }
 802   1        else
 803   1        {
 804   2          lcd_putchar(b / 10 +'0');
 805   2          lcd_putchar(b % 10 +'0');
 806   2        }
 807   1      }
 808          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    756    ----
   CONSTANT SIZE    =    176    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      11
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       2
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -