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

📄 uart.lst

📁 用89C51SND1C实现MP3播放器的源代码.用KEIL c51编写.
💻 LST
字号:
C51 COMPILER V6.23a  UART                                                                  11/27/2003 16:35:40 PAGE 1   


C51 COMPILER V6.23a, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN uart.OBJ
COMPILER INVOKED BY: d:\SoftDev\Keil\C51\BIN\C51.EXE uart.c LARGE BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /****************************************************************/
   2          /*                                      UP-MP3DIY100                                                            */
   3          /*              Beijing Universal Pioneering Technology Co., LTD                */
   4          /*              CopyRighted,All right Reserved  www.up-tech.com                 */
   5          /*                                              July,2003                                                               */
   6          /*                              010-62387873  62381842                                                  */
   7          /****************************************************************/
   8          
   9          
  10          #include <REGSND1.H>
  11          #include "uart.h"
  12          
  13          #define AT89C51SND1 1   //如果使用的是AT89C51SND1
  14          
  15          
  16          /*------------------------------------------------------------------------------
  17          ------------------------------------------------------------------------------*/
  18          char hex[16]={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
  19          
  20          /*------------------------------------------------------------------------------
  21          初使化串口
  22          ------------------------------------------------------------------------------*/
  23          void init_uart(int fre)
  24          {
  25   1      #if AT89C51SND1 
  26   1              if(fre==1200)
  27   1              {
  28   2                      TMOD=0x20;
  29   2                      TH1=0xbe;
  30   2                      TL1=0xbe;
  31   2                      SCON=0x50;
  32   2                      PCON=PCON|0x80;
  33   2                      TR1=1;
  34   2              }
  35   1      #else
              
              #endif
  38   1      }
  39          
  40          /*--------------------------------------------------------------------
  41          当输出仅为字符串时可使用
  42          ---------------------------------------------------------------------*/
  43          void printu(char * c)   
  44          {
  45   1      
  46   1          int i=0,j=0;
  47   1              char ct=*c;
  48   1          init_uart(1200);
  49   1              while(ct!='\0')
  50   1              {
  51   2      #if AT89C51SND1
  52   2                      SBUF=ct;
  53   2                      while(!TI);
  54   2                      
  55   2                      j++;
C51 COMPILER V6.23a  UART                                                                  11/27/2003 16:35:40 PAGE 2   

  56   2                      TI=0;
  57   2                      ct=*(c+j);
  58   2                      
  59   2      #endif
  60   2              }
  61   1      
  62   1      }
  63          
  64          /*-----------------------------------------------------------------------
  65          当输出为字符串时可使用或含有一控制符时使用,格式符仅用于16进制输出
  66          格式控制符为%x,回车控制符为/n
  67          -----------------------------------------------------------------------*/
  68          void printuf(char * c,unsigned char cb) 
  69          {
  70   1              int i=0;
  71   1              char ct=*c;
  72   1              char cx1;
  73   1              char cx2;
  74   1          
  75   1              init_uart(1200);
  76   1      
  77   1      #if AT89C51SND1
  78   1              while (ct!='\0')
  79   1              {
  80   2                      if(ct=='%')
  81   2                      {       
  82   3                              if(*(c+i+1)=='x')              
  83   3                              {
  84   4                                      i+=2;
  85   4                                      cx1=cb/16;
  86   4                                      cx2=cb%16;
  87   4      
  88   4                                      SBUF=hex[cx1];
  89   4                                      while(!TI);
  90   4                                      TI=0;
  91   4                                      SBUF=hex[cx2];
  92   4                                      while(!TI);
  93   4                                      TI=0;
  94   4                                      ct=*(c+i);
  95   4                                      continue;
  96   4                              }
  97   3                              
  98   3                      }
  99   2                      if(ct=='/')
 100   2                      {
 101   3                              if(*(c+i+1)=='n')
 102   3                              {
 103   4                                      i+=2;
 104   4                                      SBUF=13;
 105   4                                      while(!TI);
 106   4                                      TI=0;
 107   4                                      SBUF=10;
 108   4                                      while(!TI);
 109   4                                      TI=0;
 110   4                                      ct=*(c+i);
 111   4                                      continue;
 112   4                              }
 113   3                      }
 114   2                      SBUF=ct;
 115   2                      while(!TI);
 116   2                      TI=0;
 117   2                      i++;
C51 COMPILER V6.23a  UART                                                                  11/27/2003 16:35:40 PAGE 3   

 118   2                      ct=*(c+i);
 119   2              }
 120   1      #endif
 121   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    344    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     16      12
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   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 + -