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

📄 main.lst

📁 A7102-433.rar
💻 LST
字号:
C51 COMPILER V8.18   MAIN                                                                  03/20/2010 16:53:38 PAGE 1   


C51 COMPILER V8.18, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE source\main.c BROWSE DEBUG OBJECTEXTEND PRINT(.\main.lst) OBJECT(main.obj)

line level    source

   1                  /***********************************************
   2                          *       copyrite (c) 2007
   3                          *文件名:          main.c
   4                          *作者:            larry
   5                          *当前版本:        v1.0
   6                          *建立时间:        2007-6-11 09:03
   7                          *完成日期:        2007-6-29 9:48
   8                          
   9                          *描述:            测试A7102通讯性能(W78e52B,5V VDD,33.177M OSC)                              
  10                          ************************************************/
  11          #include    "../header/main.h"               
  12          /***********************************************
  13          函 数:  main()
  14          功 能:  主体循环函数 
  15          输 入:  /
  16          输 出:  /
  17          描 述:  /
  18          ***********************************************/        
  19          void    main(void)              
  20          {
  21   1              /* 上电初始化系统 */
  22   1              PowerOn_Initialisation();       
  23   1      
  24   1              while(1)
  25   1              {
  26   2                  KeyScan();
  27   2      
  28   2                  if(flag_transimiter)
  29   2                  {/* 1S发射一次 */ 
  30   3                      WriteLcdCmd(0xc0);                                 /* 设置DDRAM地址第二行 */
  31   3                      Delay(3);
  32   3      
  33   3                      Lcd_Display_Character(0x52);
  34   3                      Lcd_Display_Character(0x78);
  35   3                      Lcd_Display_Character(0x3a);
  36   3                      Lcd_Display_Character(0x20);                       /* Rx:  */
  37   3      
  38   3                      Lcd_Display_Character(0x20);
  39   3                      Lcd_Display_Character(0x20);
  40   3                      Lcd_Display_Character(0x20);
  41   3                      Lcd_Display_Character(0x20);
  42   3      
  43   3                      flag_transimiter    = false;
  44   3                      Time_second         = 1000;
  45   3                      
  46   3                      /* 发射A7102 */
  47   3                      A7102_Fifo_Write(&demo[number][0]);
  48   3                      A7102_Status_Transmit();      
  49   3                                
  50   3                      WriteLcdCmd(0x80);                                 /* 设置DDRAM地址第一行 */
  51   3                      Delay(3);
  52   3      
  53   3                      Lcd_Display_Character(0x54);
  54   3                      Lcd_Display_Character(0x78);
  55   3                      Lcd_Display_Character(0x3a);
C51 COMPILER V8.18   MAIN                                                                  03/20/2010 16:53:38 PAGE 2   

  56   3                      Lcd_Display_Character(0x20);                       /* Tx:  */
  57   3                      
  58   3                      Lcd_Display_Hex(demo[number][0]);
  59   3                      Lcd_Display_Hex(demo[number][1]);
  60   3      
  61   3                      /* 等待A7102发射完成 */
  62   3                      while(!iSPI_Irq)
  63   3                      {                    
  64   4                      }
  65   3      
  66   3                      /* 发射循环数组数据 */
  67   3                      if((++number) > 0x03)
  68   3                          number    = 0x00;
  69   3      
  70   3                      /* 设置A7102为接收状态 */
  71   3                      A7102_Status_Receiver();
  72   3                  }
  73   2      
  74   2                  if(iSPI_Irq)
  75   2                  {/* 接收到数据 */            
  76   3                      A7102_Fifo_Read(&rece_buff);
  77   3                      A7102_Receiver_Enable();
  78   3      
  79   3                      if(flag_clear)
  80   3                      {
  81   4                          flag_clear    = false;
  82   4                          LcdDclear();
  83   4                      }
  84   3      
  85   3                          WriteLcdCmd(0xc0);                             /* 设置DDRAM地址第二行 */
  86   3                      Delay(3);
  87   3      
  88   3                      Lcd_Display_Character(0x52);
  89   3                      Lcd_Display_Character(0x78);
  90   3                      Lcd_Display_Character(0x3a);
  91   3                      Lcd_Display_Character(0x20);                       /* Rx:  */
  92   3      
  93   3                      Lcd_Display_Hex(rece_buff[0]);
  94   3                      Lcd_Display_Hex(rece_buff[1]);
  95   3      
  96   3                      if(!flag_master)
  97   3                      {/* 从机则需要应答 */
  98   4                          A7102_Fifo_Write(&rece_buff);
  99   4                          A7102_Status_Transmit();
 100   4                          while(!iSPI_Irq)
 101   4                          {                    
 102   5                          }
 103   4                          A7102_Status_Receiver();
 104   4                      }
 105   3                  }
 106   2              }
 107   1      }
 108          /***********************************************
 109          函 数:  Timer0Int
 110          功 能:  timer0中断函数 
 111          输 入:  /  
 112          输 出:  /
 113          描 述:  /
 114          ***********************************************/
 115          void    Timer0Int(void) interrupt   1
 116          {
 117   1          TH0     = 0xF5;
C51 COMPILER V8.18   MAIN                                                                  03/20/2010 16:53:38 PAGE 3   

 118   1          TL0     = 0x33;                             // 33.177M OSC,timer0 计时1ms
 119   1          
 120   1          if(Time_Count)
 121   1              Time_Count --;
 122   1      
 123   1          if(Time_second)
 124   1          {
 125   2              if((--Time_second) == 0x00)
 126   2              {
 127   3                  flag_transimiter = true;
 128   3              }
 129   2          }
 130   1      }


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