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

📄 jianpan.lst

📁 语音芯片ISD1420的C语言程序
💻 LST
字号:
C51 COMPILER V7.50   JIANPAN                                                               08/20/2007 14:26:50 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE JIANPAN
OBJECT MODULE PLACED IN jianpan.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE jianpan.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include"reg51.h"
   2          #define unchar unsigned char
   3          #define uint unsigned int
   4          //#define dizhi1 0x00
   5          //#define dizhi2 0x20
   6          //#define dizhi3 0x40
   7          //#define dizhi4 0x80
   8          uint danyuan[]={8,16,24,32,40,48,56,64,72,80};
   9          void  delay();
  10          unchar keyscan();
  11          uint i=0;
  12          sbit play=P0^0;
  13          sbit lu=P0^1;
  14          //sbit reday=P0^2;
  15          //sbit a0=P2^0;
  16          //sbit a1=P2^1;
  17          //sbit a3=P2^3;
  18          //sbit a4=P2^4;
  19          //void zhongduan( ) interrupt 1
  20          //{ i++ ;
  21          //}
  22          void delay1( )
  23          {
  24   1         uint a,j;
  25   1         for(a=0;a<1000;a++)
  26   1         {
  27   2            for(j=0;j<400;i++)
  28   2                {;}
  29   2              }
  30   1      }
  31          /*void moshi(uint a )
  32          { 
  33            P2=a;
  34           } */
  35          
  36          void luyin(uint b )
  37          {  P2=b;
  38   1       //  TR0=1;
  39   1            lu=0;
  40   1      
  41   1      
  42   1       //  if(i==100)
  43   1       //  {
  44   1      //     lu=1;
  45   1      //      }
  46   1      
  47   1       }
  48          
  49          void fangyin(uint c )
  50          {  P2=c;
  51   1         play=1;
  52   1         delay( );
  53   1         play=0;
  54   1         delay( );
  55   1       //  while(!reday) ;
C51 COMPILER V7.50   JIANPAN                                                               08/20/2007 14:26:50 PAGE 2   

  56   1      
  57   1      }
  58               
  59          void   main()
  60          {  unchar key;
  61   1       //  TMOD=0x00;
  62   1        // TH0=0xdc;
  63   1        // TL0=0x00;
  64   1        // EA=1;
  65   1        // ET0=1;
  66   1         P2=0x00;
  67   1         
  68   1         while (1)
  69   1        {
  70   2           key=keyscan();
  71   2           switch(key)
  72   2           {
  73   3                 case 0x18:      
  74   3                 i++;
  75   3                 if(i==10) i=0;
  76   3                 break;
  77   3             case 0x14:
  78   3                 i--;
  79   3                 if(i==0) i=10;
  80   3                 break;
  81   3                 case 0x12:
  82   3                 luyin(danyuan[i]);
  83   3                 break;
  84   3                 case 0x11:
  85   3                 fangyin(danyuan[i]);
  86   3                 break;
  87   3               
  88   3                 case 0x28:
  89   3                 fangyin(danyuan[i]);
  90   3                 delay( );
  91   3                 fangyin(danyuan[i+3]);
  92   3                 break;
  93   3       //      case 0x24:fangyin(dizhi2,dizhi4);break;
  94   3      //         case 0x22:P2=0x7d;break;
  95   3      //         case 0x21:P2=0x07;break;
  96   3               
  97   3      //         case 0x48:P2=0x7f;break;
  98   3       //      case 0x44:P2=0x6f;break;
  99   3      //         case 0x42:P2=0x77;break;
 100   3      //         case 0x41:P2=0x7c;break;
 101   3      
 102   3      //         case 0x88:P2=0x39;break;
 103   3        //     case 0x84:P2=0x5e;break;
 104   3      //         case 0x82:P2=0x79;break;
 105   3      //         case 0x81:P2=0x71;break;
 106   3      //         case 0x00:P2=0x76;break;
 107   3                 default: break;
 108   3              }
 109   2      
 110   2        }
 111   1      } 
 112          
 113           void  delay()
 114            {
 115   1              unchar i;
 116   1              for(i=500;i>0;i--);
 117   1         }
C51 COMPILER V7.50   JIANPAN                                                               08/20/2007 14:26:50 PAGE 3   

 118           unchar keyscan()
 119          {
 120   1          unchar scode,recode;
 121   1              static unchar m;
 122   1          P1=0xf0;
 123   1              if ((P1&0xf0)!=0xf0)
 124   1               { 
 125   2                  delay();
 126   2                  if ((P1&0xf0)!=0xf0)                 
 127   2                   { 
 128   3                          scode=0xfe;
 129   3                          while((scode&0x10)!=0)  
 130   3                          { 
 131   4                             P1=scode;
 132   4                             if((P1&0xf0)!=0xf0)
 133   4                               { 
 134   5                                      recode=(P1&0xf0)|0x0f;
 135   5                                              m=(~scode)+(~recode);
 136   5                                      return (m);
 137   5                                   }
 138   4                            else 
 139   4                                        scode=(scode<<1)|0x01;
 140   4                          }
 141   3                   }
 142   2      
 143   2                
 144   2                }
 145   1                 if((P1&0xf0)==0xf0) return(0);
 146   1                 return(m);
 147   1      }                  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    253    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     23    ----
   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 + -