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

📄 irshou1.lst

📁 音乐控制程序
💻 LST
字号:
C51 COMPILER V7.06   IRSHOU1                                                               03/31/2008 14:40:51 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE IRSHOU1
OBJECT MODULE PLACED IN irshou1.OBJ
COMPILER INVOKED BY: D:\KIEL C\C51\BIN\C51.EXE irshou1.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<AT89x55.H> 
   2          #include <stdio.h>
   3          #include <INTRINS.H> 
   4          //#include  "Uart.h"
   5          #define uint  unsigned int
   6          #define uchar unsigned char
   7          sbit ir=P1^6;
   8          sbit out=P1^7;
   9          uchar irdata[4];
  10          uchar *irdat;
  11          uint count0,count1;
  12          uchar count10,count11;
  13          uchar t;
  14          bit    flag,flag1,flag0;
  15          //*********************************
  16          //t*2us   4.5ms  equ 561   9ms equ 1124  0.56ms equ 69 2.5ms equ 311
  17          //*********************************
  18          void delay(uint t)
  19               { while(--t);
  20   1               }
  21          //*********************************
  22          //
  23          //*********************************
  24          void checkhead()
  25               {   while(ir==0)
  26   1                      {count0++;
  27   2                       }
  28   1               if(count0>140)
  29   1                   {flag0=1;
  30   2                   }
  31   1                    count0=0; 
  32   1                        if(flag0==1)
  33   1                           { flag0=0;
  34   2                                 while(ir==1)
  35   2                              {count1++;
  36   3                              }
  37   2                        if(count1>350)
  38   2                          {flag1=1;
  39   3                          }
  40   2                        count1=0; 
  41   2                                 if(flag1==1)
  42   2                             {flag=1; 
  43   3                                  flag1=0;
  44   3                          }
  45   2                       
  46   2                       }
  47   1                }
  48          uchar irshou(uchar *data1)
  49          { //uchar data1,BitCnt,i;
  50   1         uchar i,j;
  51   1         checkhead();
  52   1                  if(flag==1)
  53   1                { 
  54   2                // out=0;
  55   2                         flag=0;
C51 COMPILER V7.06   IRSHOU1                                                               03/31/2008 14:40:51 PAGE 2   

  56   2                 //t=33;
  57   2                         for(i=0;i<4;i++) //共4个字节
  58   2                         {   //1
  59   3                             *data1=0;
  60   3                               for(j=0;j<8;j++)
  61   3                    { while(ir==0)
  62   4                            { count10++;
  63   5                                    }
  64   4                                        if(count10>20)
  65   4                             {(*data1)<<=1;
  66   5                                                  //out=0;
  67   5                              }
  68   4                                 //0
  69   4                                 while(ir==1)
  70   4                             {count11++;
  71   5                                       }
  72   4                                  if(count11<60)
  73   4                          {*data1|=1;
  74   5                                                //out=0;
  75   5                           }
  76   4                                      count10=0;
  77   4                                  count11=0;
  78   4                                      //out=1;
  79   4                                 }
  80   3                                 
  81   3                    data1++;
  82   3                                 //return(0);
  83   3                         }
  84   2                
  85   2                 }
  86   1       
  87   1         return 0; 
  88   1      }
  89          
  90          
  91          void uart_init()
  92          {
  93   1      
  94   1         SCON  = 0xDA;        // SCON: mode 1, 8-bit UART, enable rcvr      */
  95   1         TMOD |= 0x20;        // TMOD: timer 1, mode 2, 8-bit reload        */
  96   1         TH1   = 0xFD;         // TH1:  reload value for 1200 baud @ 12MHz   */
  97   1         TR1   = 1;           // TR1:  timer 1 run                          */
  98   1         TI    = 1;           // TI:   set TI to send first char of UART    */
  99   1         
 100   1      }
 101          
 102          void send(unsigned char ch)
 103             {SBUF=ch;
 104   1          while(TI==0);
 105   1          TI=0;
 106   1          }
 107          
 108          void main()
 109          {   uchar c1,c2;
 110   1          uart_init();
 111   1              while(1)
 112   1              { //checkhead();
 113   2              irshou(&irdata);
 114   2                  //P2=irdata[2];
 115   2              //P3=irdata[3];
 116   2                // 
 117   2                if(irdata[2]==~irdata[3])
C51 COMPILER V7.06   IRSHOU1                                                               03/31/2008 14:40:51 PAGE 3   

 118   2                   {c1=irdata[2]/10;
 119   3                    c2=irdata[2]%10;
 120   3                    send('0'+c1);
 121   3                    send('0'+c2);
 122   3                        //send(irdata[2]);
 123   3                       }
 124   2           //out=1;
 125   2               }
 126   1      }
 127          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    266    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     14       3
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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