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

📄 d12main.lst

📁 用at89s52访问PDIUSBD12(USB协议)
💻 LST
字号:
C51 COMPILER V7.50   D12MAIN                                                               06/09/2006 09:16:52 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE D12MAIN
OBJECT MODULE PLACED IN D12Main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE D12Main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "reg52.h"
   2          #include "D12Config.h"
   3          #include "d12main.h"
   4          #include "Descriptor.h"
   5          #include "Chap_9.h"
   6          
   7          
   8          
   9          INT8U  idata Rs_buf[Rs232_Input_LEN];
  10          INT8U g_cReceNum; 
  11          
  12          bit    Start_Rxd;
  13          bit    Rs232_Rece_Error;
  14          bit    Rs232_Flag;
  15          
  16          INT8U idata GenEpBuf[EP1_PACKET_SIZE];
  17          INT8U idata EpBuf[EP2_PACKET_SIZE];
  18          
  19          void main(void)
  20          {       
  21   1                INT8U i;
  22   1      
  23   1          //GenEpBuf[0]=9;
  24   1          MCU_LED = 0;
  25   1              delay(500);
  26   1              MCU_LED = 1;
  27   1              delay(500);
  28   1              MCU_LED = 0;
  29   1              delay(500);
  30   1              MCU_LED = 1;
  31   1              delay(500);
  32   1              MCU_LED = 0;
  33   1              delay(500);
  34   1              MCU_LED = 1;
  35   1              TH1 = TL1 = 0xFD;    //9600Kbps
  36   1          SCON = SCON|0x50;
  37   1          TMOD = TMOD|0x21;
  38   1          TR1  = True;    EA  = True;   
  39   1              ET0 = True;     ES   = True;
  40   1          if (Init_D12() != 0) return ;
  41   1              EX0 = True;                                                     //开外部中断0
  42   1              PX0 = False;                                                    //设置外部中断0中断优先级
  43   1                      while (1)
  44   1              {
  45   2             
  46   2             Usbserve();
  47   2      
  48   2                      delay(500);
  49   2               }
  50   1      
  51   1      
  52   1      }
*** WARNING C280 IN LINE 21 OF D12MAIN.C: 'i': unreferenced local variable
  53          /*******************************/
  54          /***********串口接收************/
C51 COMPILER V7.50   D12MAIN                                                               06/09/2006 09:16:52 PAGE 2   

  55          /*******************************/
  56          /*********接收不固定长度********/
  57          void RS232(void) interrupt 4 using 1
  58          {     
  59   1         unsigned char Rece_data = SBUF;
  60   1         INT8U i;
  61   1         INT8U verify = 0;
  62   1                
  63   1                 EA         = False;
  64   1                 ES         = False;  
  65   1                 MCU_LED  = False;
  66   1                    RI = 0;
  67   1                                if (Start_Rxd) 
  68   1                                {
  69   2                                           g_cReceNum ++;
  70   2                                                       Rs_buf[g_cReceNum] = Rece_data;
  71   2                                           if (Rs_buf[1] == g_cReceNum+1) 
  72   2                                                       {
  73   3                                                                         for (i=0;i<Rs_buf[1]-1;i++)
  74   3                                                                         {
  75   4                                                                                     verify^=Rs_buf[i];
  76   4                                                                         }
  77   3                                                                                 if (verify == Rs_buf[g_cReceNum])
  78   3                                                                         {
  79   4                                                                         Rs232_Flag = True;
  80   4                                                                         g_cReceNum = 0;
  81   4                                                                         }
  82   3                                                                        else 
  83   3                                                                         {
  84   4                                                                                      Rs232_Rece_Error = True;
  85   4                                                                                              g_cReceNum = 0;
  86   4                                                                         }
  87   3                                                                         Start_Rxd = False;
  88   3                                                       }
  89   2                                                         else 
  90   2                                                       {
  91   3                                      if ((Rs_buf[1]>Rs232_Input_LEN)||(g_cReceNum>Rs232_Input_LEN-1)) 
  92   3                                                                      {
  93   4                                                                           g_cReceNum = 0;
  94   4                                                                               Rs232_Rece_Error = True;
  95   4                                                                               Start_Rxd = False;
  96   4                                                                      }                                                         
  97   3                                                                        
  98   3                                                       }
  99   2      
 100   2                                } 
 101   1                                       else
 102   1                    {        
 103   2                                     if (Rece_data == 0xBD)
 104   2                         {    
 105   3                                       Start_Rxd = True;
 106   3                               g_cReceNum = 0;
 107   3                               Rs_buf[0]  = Rece_data;
 108   3                         }          
 109   2      
 110   2                      }
 111   1                 MCU_LED  = True;
 112   1             ES = True;
 113   1                 EA = True;
 114   1                
 115   1      }
 116           
C51 COMPILER V7.50   D12MAIN                                                               06/09/2006 09:16:52 PAGE 3   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    226    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       1
   IDATA SIZE       =     90    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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